• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Daniel Steigerwald: EsteJS - javascriptové aplikace robusně, modulárně a komfortně
 

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

on

  • 1,741 views

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 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.

Statistics

Views

Total Views
1,741
Views on SlideShare
1,741
Embed Views
0

Actions

Likes
2
Downloads
4
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

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

    • Este.jsrobust, modular, comfortable ... about Este.js dev stack daniel@steigerwald.cz javascript-skoleni.cz
    • 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.)
    • 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.
    • How to orchestrate so many things?Versioning, automatizations, configurations,boilerplates, reusability...Make your own dev stack. Done.
    • 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)
    • 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)
    • 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
    • Bower - package managerHow is this better than curl?● similar API as NPM● simple and cross-platform● semver.org and tags
    • Grunt.js - task runnergruntjs.comgruntjs.com/plugins● over 400 plugins● tasks and targets● synchronous globbing● async queue
    • 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 :)
    • Module Loaders● CommonJS● AMD● many different/mixed implementations ○ Google Closure deps.js ○ browserify.org ○ github.com/component/component ○ and more...
    • 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.
    • 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.
    • Questions?daniel@steigerwald.cz javascript-skoleni.cz