Your SlideShare is downloading. ×
Daniel Steigerwald: EsteJS - javascriptové aplikace robusně, modulárně a komfortně
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Daniel Steigerwald: EsteJS - javascriptové aplikace robusně, modulárně a komfortně

1,428
views

Published on

Google je firma, která tvoří asi nejvíce webových aplikací a zaměstnává nejvíce webových vývojářů. Ti už mnoho let používají framework Google Closure. Este.js je framework nad Google Closure …

Google je firma, která tvoří asi nejvíce webových aplikací a zaměstnává nejvíce webových vývojářů. Ti už mnoho let používají framework Google Closure. Este.js je framework nad Google Closure postavený, který už několik let používám k vývoji všech možných webových aplikací, ale také sada open source nástrojů, které se vám vyplatí znát a používat, i když vaše srdce tíhne k jQuery. Dozvíte se také, jak řídit závislosti a verze (package management), k čemu jsou dobré moduly, a jak mít maximálně automatizovaný a komfortní dev stack pro vývoj webových aplikací hodný roku 2013.


0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,428
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Este.jsrobust, modular, comfortable ... about Este.js dev stack daniel@steigerwald.cz javascript-skoleni.cz
  • 2. What Este.js is?● statically compiled CoffeeScript● Google Closure Library● Mocha tests● Stylus styles● Soy templates● Este.js library ○ MVC framework ○ quite a lot useful classes● simple server for development● settings and snippets for Sublime Text● (Im sure I forgot something.)
  • 3. JargonPackage Manager: Fetch scripts from onlinesources like GitHub, taking dependencies intoaccount.Task Runner: Build tool, combines scripts andother assets together into something usable bybrowsers.Module Loader: A way to programmaticallyload scripts when they are needed.
  • 4. How to orchestrate so many things?Versioning, automatizations, configurations,boilerplates, reusability...Make your own dev stack. Done.
  • 5. Este.js dev stack consists of:● github.com/steida/este-library ○ JavaScript library, all reusable code is here.● github.com/steida/grunt-este ○ several tasks for Grunt.js (task runnerl)● github.com/steida/este ○ application boilerplate ○ /Gruntfile.js/coffee (task runner configuration) ○ /bower.json (package manager) ○ /package.json (package manager)
  • 6. Bower - package managergithub.com/twitter/bowersindresorhus.com/bower-components● generic and unopinionated● for frontend (NPM is for backend)● over 1000 components● dont store packages in your repository!● learn semver.org● use tags (and tilde, e.g. ~0.4.0)
  • 7. Bower - package managerbower install jquerybower install git://github.com/components/jquery.gitbower install components/jquery (same as above)bower install http://foo.com/jquery.awesome-plugin.jsbower install ./repos/jquerybower install jquery#1.8.1bower install components/jquery.git#~1.8.1bower install components/jquery#1.8.xbower install git@github.com:user/private-package.gitbower list
  • 8. Bower - package managerHow is this better than curl?● similar API as NPM● simple and cross-platform● semver.org and tags
  • 9. Grunt.js - task runnergruntjs.comgruntjs.com/plugins● over 400 plugins● tasks and targets● synchronous globbing● async queue
  • 10. Grunt.js - task runnerHow is this better than make?● simple and cross-platform (again)● familiar api for all plugins, a lot of helpers● you can reuse your knowledge of JavaScript and Node.js● goto previous slide :)
  • 11. Module Loaders● CommonJS● AMD● many different/mixed implementations ○ Google Closure deps.js ○ browserify.org ○ github.com/component/component ○ and more...
  • 12. TJ Holowaychuk: Componentgithub.com/component/componentcomponent.io● death to monolithic libraries, granularity!● both package control and module loader● hundreds components yetBower is for existing libs while Component isfor creating small new ones for the purpose.
  • 13. Summary● we live in interesting times● there are a lot of other approaches ○ AngularJS ○ Sencha ○ Dojo ○ almost-dead libraries like Mootools...Everything in life is a trade-off.
  • 14. Questions?daniel@steigerwald.cz javascript-skoleni.cz

×