Slide 1

Slide 1 text

EMBER.JS PRIMER Soponya, 2013.05.10 - DBX Workshop Monday, May 13, 13

Slide 2

Slide 2 text

ÉRDI BÁLINT twitter: @baaz http://balinterdi.com [Emberjs, Ruby on Rails, Clojure] Monday, May 13, 13

Slide 3

Slide 3 text

SHOW OF HANDS Monday, May 13, 13

Slide 4

Slide 4 text

JAVASCRIPT CLIENT-SIDE FRAMEWORKS • Aim to bring the desktop experience to the web • Could easily be the next big thing • People like fast, intuitive user experience Monday, May 13, 13

Slide 5

Slide 5 text

JAVASCRIPT CLIENT-SIDE FRAMEWORKS • Angular.js ⚔ • Backbone • Batman.js • Sammy.js •Ember.js ✌ • Knockout.js Monday, May 13, 13

Slide 6

Slide 6 text

CLIENT-SIDE MVC IS NOT SERVER-SIDE MVC Monday, May 13, 13

Slide 7

Slide 7 text

EMBER.JS: MAIN COMPONENTS • Model: Stores and fetches data • Controller: proxies model data to views • View: reusable UI component, handles events • Templates: base for rendered html (aka. as view in server-side MVC :) ) • Router: matches URLs and connects other components (somewhat like controllers in server-side mvc) Monday, May 13, 13

Slide 8

Slide 8 text

TALK IS CHEAP, SHOW ME THE CODE Monday, May 13, 13

Slide 9

Slide 9 text

NAMING CONVENTIONS - PLURAL • this.resource(‘tables’) • App.TablesRoute • App.Table • App.TablesController • App.TablesView • Template: tables Monday, May 13, 13

Slide 10

Slide 10 text

NAMING CONVENTIONS - SINGULAR • this.resource(‘table’) (nested) • App.TableRoute • App.Table • App.TableController • App.TableView • Template: table Monday, May 13, 13

Slide 11

Slide 11 text

JOIN THE CLIENT SIDE. Monday, May 13, 13

Slide 12

Slide 12 text

KÖSZÖNÖM. @BAAZ Monday, May 13, 13