$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Ember.js: Passado, presente e futuro
Search
Danilo Vaz
September 16, 2017
Technology
0
89
Ember.js: Passado, presente e futuro
Light Talk Front in Vale 2017: uma breve história sobre o passado, presente e futuro do Ember.js
Danilo Vaz
September 16, 2017
Tweet
Share
More Decks by Danilo Vaz
See All by Danilo Vaz
React: O que ninguém te conta
danilovaz
0
60
Zilla: Criação de um Design System escalável em um produto com milhões de acessos
danilovaz
0
380
Ember - Por que você ainda não está usando?
danilovaz
0
72
Flexbox
danilovaz
1
290
Organização CSS
danilovaz
0
170
Front-end To Back-Enders
danilovaz
0
180
Analfabetismo Tecnológico
danilovaz
0
150
Other Decks in Technology
See All in Technology
エンジニアとPMのドメイン知識の溝をなくす、 AIネイティブな開発プロセス
applism118
4
740
Kiro Autonomous AgentとKiro Powers の紹介 / kiro-autonomous-agent-and-powers
tomoki10
0
300
なぜ使われないのか?──定量×定性で見極める本当のボトルネック
kakehashi
PRO
1
1.2k
re:Invent2025 コンテナ系アップデート振り返り(+CloudWatchログのアップデート紹介)
masukawa
0
310
【CEDEC+KYUSHU2025】学生・若手必見!テクニカルアーティスト 大全 ~仕事・スキル・キャリアパス、TAの「わからない」を徹底解剖~
cygames
PRO
0
140
生成AI時代の自動E2Eテスト運用とPlaywright実践知_引持力哉
legalontechnologies
PRO
0
210
最近のLinux普段づかいWaylandデスクトップ元年
penguin2716
1
660
第4回 「メタデータ通り」 リアル開催
datayokocho
0
110
エンジニアリングマネージャー はじめての目標設定と評価
halkt
0
250
SSO方式とJumpアカウント方式の比較と設計方針
yuobayashi
7
290
日本Rubyの会の構造と実行とあと何か / hokurikurk01
takahashim
4
910
20251209_WAKECareer_生成AIを活用した設計・開発プロセス
syobochim
5
1.3k
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Context Engineering - Making Every Token Count
addyosmani
9
490
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Unsuck your backbone
ammeep
671
58k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
710
Raft: Consensus for Rubyists
vanstee
141
7.2k
How GitHub (no longer) Works
holman
316
140k
Thoughts on Productivity
jonyablonski
73
5k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
1
92
Transcript
None
/danilovaz @_danilovaz
None
None
None
None
None
It's more important to reduce the effort of maintenance than
it's to reduce the effort of implementation. Max Kanat-Alexander, Code Quality
None
None
None
None
<html> <head> <script src="/public/ember.js"></script> </head> <body> <script type="text/x-handlebars"> Hello, <strong>{{firstName}}
{{lastName}}</strong>! </script> <script type="text/x-handlebars" data-template-name="say-hello"> <div class="my-cool-control">{{name}}</div> </script> <script> App.ApplicationController = Ember.Controller.extend({ firstName: "Trek", lastName: "Glowacki" }); </script> </body> </html>
<div id="ember162" class="ember-view"> <h2>Welcome to Ember.js</h2> <script id="metamorph-1-start" type="text/x-placeholder"></script> <script
id="metamorph-0-start" type="text/x-placeholder"></script> <ul> <script id="metamorph-5-start" type="text/x-placeholder"></script> <script id="metamorph-2-start" type="text/x-placeholder"></script> <li> <script id="metamorph-6-start" type="text/x-placeholder"></script> red <script id="metamorph-6-end" type="text/x-placeholder"></script> </li> <script id="metamorph-2-end" type="text/x-placeholder"></script> <script id="metamorph-3-start" type="text/x-placeholder"></script> </ul> <script id="metamorph-0-end" type="text/x-placeholder"></script> <script id="metamorph-1-end" type="text/x-placeholder"></script> </div>
<div> <h2>Welcome to Ember.js</h2> <ul> <li>red</li> </ul> </div>
<div id="logo"> <img {{bind-attr src=logoUrl}} alt="Logo"> </div>
<div id="logo"> <img src="{{logoUrl}}" alt="Logo"> </div>
None
fonte: http://yehudakatz.com/2017/04/05/the-glimmer-vm-boots-fast-and-stays-fast/
None
import Ember from 'ember'; export default Ember.Component.extend({ tagName: 'input', attributeBindings:
['disabled', 'type:kind'], disabled: false, kind: 'range', classNameBindings: 'type', type: 'primary' });
import Component from '@glimmer/component'; export default class extends Component {
type = 'primary' }
None
None
None
@mtmr0x
None
Diversidade e Equalidade
None