Web Development Workflow: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Zeile 2: | Zeile 2: | ||
==Overview of Tools== | ==Overview of Tools== | ||
* [https://secure.flickr.com/photos/kejun/6988320204/ Tooling in the web app development lifecycle] | * [https://secure.flickr.com/photos/kejun/6988320204/ Tooling in the web app development lifecycle] | ||
+ | * [https://gist.github.com/jonkemp/2713513 Tooling & the Webapp Development Stack] | ||
+ | ** [https://gist.github.com/jonkemp/2713513 URL's from Paul Irish's talk: Tooling & The Webapp Development Stack] | ||
==Javascript Development Workflow of 2013== | ==Javascript Development Workflow of 2013== |
Version vom 12. Juni 2013, 22:27 Uhr
Overview of Tools
Javascript Development Workflow of 2013
Video: Javascript Development Workflow of 2013 by Paul Irish (PDF)
Shell
- Shell customizations: http://dotfiles.github.io/
- Faves: z script (for jumping), server alias
Editor
- learn it well, most important
- Code linting is your first unit test.
- Realtime Feedback
- live linting
- live recompilation
- live reload
Javascript
- Modules / Dependency management
- AMD modules
- CommonJS modules
- ECMAScript Harmony modules
- Minispade require (ember.js example)
- Tricks:
- Template precompilation - into functions in a build step and ship the compiled templates.
- Custom build output based on build-time forks. (require.js optimizier)
- More module magic from Alex Sexton (MVC MODULE MAGIC)
- Modules / Dependency management
- Package Management - cooming soon.
- In-Browser Devtools
- sourceURL (Source Mapping, Source Mapping Compile Demo)
- source maps - full live debugging on source files with Chrome Dev tools.
- Navigating scripts
- Mobile
- Test in Chrome
- Emulate touches, override device metrics
- Emulators & Browserstack
- Real device & Adobe Shadow
- Chrome on Android w/ DevTools
- Test in Chrome
Testing
- Jasmin, QUnit or Mocha
- Execute tests in a variety of settings:
- In the Browser
- In a headless browser on-demand via cmd line
- In a headless browser post-push. Continuous Integration
- https://travis-ci.org/ - on every commit - test.
- In multiple browsers via cmd line
- bunyip -f test/index.html
- In multiple browsers in the cloud via cmd line (e.g. with BrowserStack)
- bunyip -f test/index.html -b ios
Build System
- Use Grunt!
- Resolve your dependency chain
- concatenate
- compile
- flatten your CSS @imports
- Remove debugging statements
- Compress images
- Precompile templates
- Run tests in a variety of environments
- Revs asset paths for caching
- Affirm code quality
After Deployment
Client-Side Error Tracking
Projects to check out
- Grunt
- LiveReload
- Shadow
- CodeKit
- Brunch - recompiler
- WebStorm - unit testing, ...
Principles
- DRY - Don't Repeat Yourself
- don't type ./build.sh everytime you save a file
- don't ftp everytime up you update the site's release branch.
- Learn from other developers.
- Share what you've learned.