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
Complex Component Design in Ember
Search
Balint Erdi
October 10, 2015
Technology
0
340
Complex Component Design in Ember
The (online) talk I gave at the Global Ember Meetup.
Balint Erdi
October 10, 2015
Tweet
Share
More Decks by Balint Erdi
See All by Balint Erdi
Data Loading Patterns with JSON API
balint
5
1.1k
Why you should consider Ember.js for your next project
balint
4
230
Data Loading Patterns in Ember
balint
1
170
Auth* in Ember apps with Torii
balint
1
230
(Somewhat) Complex Component Design – Ember.BP, 2015/02/11
balint
1
82
Don't call me back - How Ember uses promises and how you can, too
balint
5
10k
Acceptance testing in Ember.js
balint
1
510
Unit testing in Ember.js
balint
0
61
Introduction to ember-data
balint
0
150
Other Decks in Technology
See All in Technology
沒想過的前端錯誤處理可能比你有做的還多
line_developers_tw
PRO
0
2k
BDD(Cucumber)コミュニティが無料提供しているコンテンツの紹介と現在起きている危機
nihonbuson
4
730
技術広報経験0のEMがエンジニアブランディングをはじめてみた
coconala_engineer
1
130
プッシュ型子育てサービスを、先行プロジェクト実施自治体において開始します
govtechtokyo
0
250
任意コード実行の原理
ffri
0
170
実務への応用例から考える 変更に強いオブジェクト指向設計 / 20240324-ooc2024
bengo4com
7
5.3k
バッチ処理のSLOをどう設計するか
rynsuke
7
560
10分でわかるfreeeのQA
freee
0
230
マイクロサービス環境におけるDB戦略 in DMMプラットフォーム
pospome
11
3k
既存プロセスからの脱却と変化に適応するために必要なこと
cybozuinsideout
PRO
2
170
データ品質をコード化! LINEヤフーのMLOpsを最適化する "ACP Data Quality" の紹介
lycorptech_jp
PRO
2
170
中央集権体制からDataOpsへの転換 / centralized-to-dataops-transformation
pei0804
7
1.5k
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
21
3.8k
The Invisible Customer
myddelton
114
12k
Designing for humans not robots
tammielis
247
25k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
240
1.2M
Large-scale JavaScript Application Architecture
addyosmani
501
110k
Web Components: a chance to create the future
zenorocha
304
41k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
124
32k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
272
12k
Docker and Python
trallard
33
2.6k
Side Projects
sachag
451
41k
Infographics Made Easy
chrislema
237
18k
Git: the NoSQL Database
bkeepers
PRO
421
63k
Transcript
Complex component design Global Ember Meetup 10/10/2015
or Component design is complex
Components are important
Components are even more important in Ember 2
“I thought of objects being like biological cells and/or individual
computers on a network, only able to communicate with messages”
“I thought of objects being like biological cells and/or individual
computers on a network, only able to communicate with messages” Alan Kay
Messages between objects, and how they are sent is more
important than the structure of objects.
Messages between objects, and how they are sent is more
important than the structure of objects. BDDers (mockists, London School TDD)
“Components are the objects of the UI”
“Components are the objects of the UI” Me
Communication between components is key.
Balint Erdi @baaz balinterdi http://balinterdi.com
http://rockandrollwithemberjs.com
Components are hard
(hard as opposed to easy)
We’re figuring this out
We’re figuring this out (I certainly am)
Lot more tools at our disposal (esp. from 1.13+)
Data Down, Actions Up • Pass data down to children
• Children fire actions towards their parent • Uni-directional flow
Controller ~ Routable component auto-complete auto-complete-list auto-complete-option auto-complete-option auto-complete-option
Controller ~ Routable component auto-complete auto-complete-list auto-complete-option auto-complete-option auto-complete-option
Controller ~ Routable component auto-complete auto-complete-list auto-complete-option auto-complete-option auto-complete-option
Enough thought- leadering already
Component design ideas (in Ember) • Break bigger components up
to small pieces • Minimize assumptions about passed-in data • Leverage block params & closure actions • Use block parameters as a public API.
References • “Simple Made Easy” talk by Rich Hickey •
Star-rating component • Autocomplete component • “The x-foo in you” talk by Ryan Florence
Thank you!