Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Ember.js Meetup - Koblenz and Neuwied
Search
Kasper Tidemann
September 11, 2014
Programming
3
170
Ember.js Meetup - Koblenz and Neuwied
Slides from my talk at the Ember.js meetup in Koblenz at the rz-Druckhaus.
Kasper Tidemann
September 11, 2014
Tweet
Share
More Decks by Kasper Tidemann
See All by Kasper Tidemann
Distribuerede systemer på CBS, 18. september 2017 - transaktioner, del 2
kaspertidemann
1
280
Distribuerede systemer på CBS, 14. september 2017 - transaktioner, del 1
kaspertidemann
0
450
Distribuerede systemer på CBS, 7. september 2017 - skalering, del 2
kaspertidemann
0
420
BitLab - Do IT Yourself
kaspertidemann
1
65
Distribuerede systemer på CBS, 7. september 2017 - skalering, del 1
kaspertidemann
0
440
Distribuerede systemer på CBS, 5. oktober 2016 - arkitektur og repetition
kaspertidemann
0
210
Distribuerede systemer på CBS, 3. oktober 2016 - arkitektur
kaspertidemann
0
220
Oplæg om IT-arkitektur, AEA, 29. september 2016
kaspertidemann
1
110
Distribuerede systemer på CBS, 28. september 2016 - transaktioner
kaspertidemann
0
230
Other Decks in Programming
See All in Programming
サーバーレスで負荷試験!Step Functions + Lambdaを使ったk6の分散実行
shuntakahashi
6
1.6k
Rubyとクリエイティブコーディングの輪の広がり / The Growing Circle of Ruby and Creative Coding
chobishiba
1
270
Hono・Prisma・AWSでGeoなAPI開発
nokonoko1203
5
680
AndroidアプリのUIバリエーションをあの手この手で確認する / Check UI variations of Android apps by various means
tkmnzm
1
180
Crafting Cross-Platform Adventures: Building a Game Engine with Kotlin Multiplatform
dwursteisen
0
120
GoのIteratorに詳しくなってしまう
inatonix
1
200
rbs-inlineを導入してYARDからRBSに移行する
euglena1215
1
290
はじめてみよう量子プログラミング
itokoichi01
0
210
unique パッケージから学ぶ interning と weak reference @ Asakusa.go#3
karamaru
2
810
【TID2024】模擬講義:プログラマと一緒にゲームをデザインしてみよう!
akatsukigames_tech
0
660
ドメイン駆動設計を実践するために必要なもの
bikisuke
4
330
Desafios e Lições Aprendidas na Migração de Monólitos para Microsserviços em Java
jessilyneh
2
150
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
80
5.1k
Into the Great Unknown - MozCon
thekraken
29
1.4k
For a Future-Friendly Web
brad_frost
174
9.3k
Typedesign – Prime Four
hannesfritz
39
2.3k
Build your cross-platform service in a week with App Engine
jlugia
228
18k
How GitHub Uses GitHub to Build GitHub
holman
472
290k
Fireside Chat
paigeccino
31
2.9k
Designing Experiences People Love
moore
138
23k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
26
1.9k
4 Signs Your Business is Dying
shpigford
179
21k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.2k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
502
140k
Transcript
September 11, 2014 Ember.js Meetup Koblenz und Neuwied
{ name: “Kasper Tidemann”, profession: “Software developer”, company: “Tidemann&Co”, codes:
[“JavaScript”, “Go”], likesTo: “Be nice and drink beer.”, places: [“Copenhagen”, “San Francisco”], alsoDoes: “Blogging”, website: “kaspertidemann.com” } string
Meeho! is a CRM system and my first company.
My favorite editor is Atom. Now you know everything about
me.
A bit about where we came from and where we’re
headed. Status quo
Back then…
Now: Unreal 4 in the browser thanks to asm.js, a
subset of JavaScript.
Seriously, that’s crazy! OMG LOOOOOOOL
Let’s talk Ember.js! App.inject( );
First things first. A framework for creating ambitious web applications.
… there’s more to it, but let’s stick to the
basic. Ember.js has routes, templates and controllers. Core concepts App.Router.map(function() { this.route(‘koblenz’); this.route(‘neuwied’); }); <script type=“text/x-handlebars” id=“koblenz”> <p>Welcome to Koblenz!</p> <p>Today is {{date}}.</p> </script> App.KoblenzController = Em.Controller.extend({ date: Em.computed(function() { return (new Date()).getTime(); }) });
A brief overview of what comes from where. App.Router.map(function() {
this.route(‘koblenz’); this.route(‘neuwied’); }); <script type=“text/x-handlebars” id=“koblenz”> <p>Welcome to Koblenz!</p> <p>Today is {{date}}.</p> </script> App.KoblenzController = Em.Controller.extend({ date: Em.computed(function() { return (new Date()).getTime(); }) });
Essentially, anyway. The router takes care of turning the URL
into meaningful state. It invokes controllers, views, and has templates appear in the browser. Router
Like partials in Ruby on Rails and so on. Templates
contain the HTML to show in the browser. Ember.js uses Handlebars for templating, a string-based solution soon to be replaced by HTMLBars. Templates
Glueing everything together! Controllers are typically instantiated by the router.
Each route has a corresponding controller for working with data, variables, bindings and so on. Controllers
Demonstration
We’ve only just touched upon the surface of what Ember.js
is. There is way more to Ember.js than just that: models, mixins, helpers, bindings, components and so on.
Sharing is caring. <3 https://github.com/KasperTidemann/emberjs-meetup-koblenz-neuwied Example files are available on
GitHub:
Enough talk! Who actually uses this magnificent piece of software?
Who uses Ember.js?
None
Because of the sensible conventions, the rapid development experience, the
helpful bindings… Why should you use Ember.js? (And because you really don’t want to setInterval() for checking hash changes nor fiddle with push states yourself. Believe me, I did that once. All you want is to build an awesome app.)
http://www.kaspertidemann.com/ Thank you!