Slide 1

Slide 1 text

Introduction

Slide 2

Slide 2 text

Paul Chavard @tchak tchak.net

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

MVC (RT)

Slide 5

Slide 5 text

✓ Model : persisted state ✓ View : visible state ✓ Controller : session state

Slide 6

Slide 6 text

Object Model

Slide 7

Slide 7 text

Ember.Object.extend Ember.Object.reopen Ember.Object.create

Slide 8

Slide 8 text

Run Loop

Slide 9

Slide 9 text

set property set property set property render() } backburner.js

Slide 10

Slide 10 text

Bindings

Slide 11

Slide 11 text

✓ Connect two properties ✓ Run loop aware ✓ No guaranty on the value ✓ Reserved for views

Slide 12

Slide 12 text

Computed Property

Slide 13

Slide 13 text

✓ Cached getter/setter ✓ Dependencies ✓ Computed on demand ✓ Computed macros

Slide 14

Slide 14 text

Router

Slide 15

Slide 15 text

✓ Connect Model/View/Controller ✓ Named routes (#linkTo) ✓ Sensible Defaults (index)

Slide 16

Slide 16 text

Handlebars

Slide 17

Slide 17 text

✓ Logic-less ✓ Optimized for smartness ✓ Can be rendered on server

Slide 18

Slide 18 text

✓ {{outlet}} ✓ {{render}} ✓ {{#each}} ✓ {{#if}}

Slide 19

Slide 19 text

Ember Data Is NOT a resource wrapper

Slide 20

Slide 20 text

✓ Identity Map ✓ CRUD ✓ Adapters

Slide 21

Slide 21 text

Why Use EmberJS?

Slide 22

Slide 22 text

✓ Focus on Your actual Project ✓ Built on Rails Experience ✓ Awesome Community

Slide 23

Slide 23 text

adoption

Slide 24

Slide 24 text

Thats It!