×
Copy
Open
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Ember.js
Slide 2
Slide 2 text
Paul Chavard capitainetrain.com
Slide 3
Slide 3 text
Capitaine Train recrute!
Slide 4
Slide 4 text
*.js
Slide 5
Slide 5 text
Backbone.js Knockout.js Serenade.js Angular.js Spine.js Batman.js Ember.js
Slide 6
Slide 6 text
Bindings HTML Templates Hierarchical Views Interoperability Backbone.js Spine.js Knockout.js Batman.js Serenade.js Angular.js Ember.js SproutCore Cappuchino > 1.5
Slide 7
Slide 7 text
Object
Slide 8
Slide 8 text
✓ Ember.Object.create ✓ Ember.Object.extend ✓ Ember.Object.reopen ✓ Ember.Object.reopenClass
Slide 9
Slide 9 text
Bindings
Slide 10
Slide 10 text
✓ Ember.Binding.bool(path) ✓ Ember.Binding.not(path) ✓ Ember.Binding.notNull(path) ✓ Ember.Binding.and(path1, path2) ✓ Ember.Binding.or(path1, path2)
Slide 11
Slide 11 text
Templates
Slide 12
Slide 12 text
✓ {{App.user.fullName}} ✓ {{{App.user.fullName}}} ✓ {{unbound App.user.fullName}} ✓ {{view Ember.Button target=”App.user” action=”doStuff”}} ✓ {{collection contentBinding=”App.usersList” tagName=”ul”}}
Slide 13
Slide 13 text
✓
✓
add user
✓ ✓ {{template app_header}} ✓ {{#with App.user}}
{{fullName}}
{{/with}}
Slide 14
Slide 14 text
✓ {{log App.user.fullName}} ✓ {{debugger}}
Slide 15
Slide 15 text
Controllers
Slide 16
Slide 16 text
User User User User UsersController StatsView ListView Button
Slide 17
Slide 17 text
Enumerables
Slide 18
Slide 18 text
✓ Ember.Enumerable.mapProperty ✓ Ember.Enumerable.filterProperty ✓ Ember.Enumerable.findProperty ✓ Ember.Enumerable.everyProperty ✓ Ember.Enumerable.someProperty
Slide 19
Slide 19 text
Demo github.com/tchak/parisjs-app
Slide 20
Slide 20 text
twitter @emberjs github @emberjs IRC #emberjs emberjs.org
Slide 21
Slide 21 text
twitter @tchak13 github @tchak talks.tchak.net
Slide 22
Slide 22 text
thanks ! questions ?