~/talk

Building Better Components

Talkat EmberConf 2019 · on Wednesday, 2019-03-20· [ember]
slides:none on file

Ember component patterns get named and demonstrated with concrete tradeoffs: data down actions up for reusable components that never mutate external state; single responsibility components that accept a model and mutate it directly for one-use forms; provider components that yield behavior and set tagName = '' to avoid wrapper divs; computed properties and Ember’s yield helper keep rendering declarative. Claim: readable components save time (Clean Code quote: reading vs writing over ten to one). Examples include a rewritten codebase that removes jQuery and giant “data fetcher” monsters.

AI-written summary · about

  1. 0:00Intro
  2. 1:22THE DATA FETCHER
  3. 3:39Single Responsibility Principle
  4. 4:11Don't Repeat Yourself Principle
  5. 5:25Reusable Component Pattern
  6. 6:18Reusable Component: Date Picker
  7. 8:06Single Purpose Component Pattern
  8. 8:52Single Purpose Component: Edit User Form
  9. 10:09Reusable vs Single Purpose Components
  10. 11:18Provider Component Pattern
  11. 13:13Provider Component: Percentage Complete
  12. 14:23Presentational Component Pattern
  13. 14:47Presentational Component: Progress Bar
  14. 15:28Contextual Component Pattern
  15. 16:40Contextual Components: Modal
  16. 19:11Wishful Programming
  17. 20:03Writing the Interface
  18. 21:31Declarative vs Imperative Code
  19. 22:35Declarative Rendering
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.