Advertisement
Advertisement

More Related Content

Advertisement

More from Fwdays(20)

Advertisement

"Frameworks in 2015" Андрей Листочкин

  1. Frameworks in 2015 Andrey Listochkin @listochkin github.com/listochkin github.com/dev-ua
  2. Frameworks in 2015
  3. @listochkin frontendua.im
  4. 2015
  5. Angular Ember React
  6. MVC
  7. MV*
  8. *V*
  9. ***
  10. Architecture
  11. BIG Apps
  12. GMail ~2007 800k
  13. Your App Today ~1.5m
  14. Frameworks Matter
  15. bootstrap server DOM data 3rd-party ...
  16. Write It By Hand
  17. Ecosystems
  18. Ember Ember Data Ember CLI Ember Inspector Ember Deploy LiquidFire EmberFire Ember Paper
  19. Ember vs React
  20. Ember Ecosystem vs React Ecosystem
  21. Missing Piece?
  22. Abandon
  23. Wait
  24. Implement
  25. and Share
  26. Dynamics of Ecosystems
  27. Dynamics of Open Source
  28. Done == Dead
  29. jQuery
  30. Backbone
  31. It Works!
  32. All Bugs Fixed
  33. No one wants it :(
  34. Reinvent
  35. Refactor
  36. Bikeshed
  37. Change!
  38. Abandon
  39. Batman JS Spine Knockout Can JS Durandal JavaScript MVC
  40. Wait
  41. Ember FastBoot
  42. Angular 2
  43. Mixins in React
  44. Implement
  45. Builds
  46. Ember CLI
  47. Grunt vs Gulp Browserify vs Webpack Test’em vs Karma Selenium vs Protractor
  48. and Share
  49. Gold Rush
  50. Young Ecosystems
  51. React Flux
  52. 493 results for 'flux' https://www.npmjs.com/search?q=flux
  53. We've found 1,276 repository results https://github.com/search? q=flux&l=JavaScript&type=Repositorie s
  54. Facebook Flux Reflux Fluxxor Fluxible by Yahoo Alt Flummox Marty.js McFly Lux Fynx Fluxy
  55. Rivalry
  56. AngularStrap vs UI Bootstrap
  57. Unification
  58. Ember CLI Deploy
  59. 3 projects
  60. merged into one
  61. 6 core contributors
  62. 925 packages http://www.emberaddons.com/
  63. Open Source is HARD
  64. Github stars Green Badges Great Docs Big Early Adopters API compatibility Issues Triaging
  65. Dynamics
  66. forced to change
  67. missing pieces
  68. great artists steal Steve Jobs Pablo Picasso Igor Stravinsky William Faulkner T. S. Eliot W. H. Davenport Adams
  69. common future
  70. Predict to Future-proof
  71. framework-agnostic architecture
  72. since summer 2013
  73. architecture = decisions
  74. code
  75. tools
  76. dependencies
  77. code
  78. spacial
  79. components
  80. YUI 2007
  81. Widgets
  82. Angular Directive 2009
  83. custom elements
  84. Twitter Flight January 31, 2013
  85. Modern Components
  86. data down events up
  87. React sans vDOM
  88. Polymer May 16, 2013
  89. <stock-badge ticket=”msft” range=”yoy” chart=”linear”>
  90. React May 29, 2013
  91. Ember 1.0 rc8 Aug 29, 2013
  92. Ember Components
  93. Rethinking Best Practices video Oct 30, 2013
  94. components
  95. dumb vs smart
  96. dumb UI-only No dependencies No domain state
  97. dumb is good
  98. double wrap
  99. smart wraps dumb
  100. higher-order components
  101. Route-driven Views
  102. Nested UI
  103. global UI state vs local UI state
  104. Router.map -> @route 'talk/new', path: 'talks/new' @route 'schedule', { path: 'talks' }, -> @route 'talk', path: ':talk_id'
  105. Router.map -> @route 'talk/new', path: 'talks/new' @route 'schedule', { path: 'talks' }, -> @route 'talk', path: ':talk_id'
  106. Router.map -> @route 'talk/new', path: 'talks/new' @route 'schedule', { path: 'talks' }, -> @route 'talk', path: ':talk_id'
  107. Router.map -> @route 'talk/new', path: 'talks/new' @route 'schedule', { path: 'talks' }, -> @route 'talk', path: ':talk_id'
  108. {{outlet}}
  109. components = tags
  110. outlets = iframes
  111. shallow hierarchies
  112. UI-only components
  113. livereloadability
  114. share
  115. Router + Components
  116. Route Handler loads data handles actions
  117. Component shows DOM DOM events => actions manages children
  118. Router + Components
  119. got a form? write a component! even when you don’t reuse
  120. Ember
  121. controllers views components++
  122. Angular
  123. smallest controllers possible
  124. directives++
  125. angular 1.4 router UI router
  126. React
  127. react-router
  128. depth
  129. MVC
  130. “easy”
  131. Backbone
  132. Models Sync Data binding
  133. better
  134. Identity
  135. Unidirectional Data flow
  136. immutability+FP
  137. CQRS
  138. Operation Transforms
  139. Offline Mode
  140. distributed systems
  141. Battlefield
  142. flux
  143. flux in any framework
  144. Monadic Data Dependencies Declaration
  145. GraphQL
  146. Write-Only DOM
  147. Ember Glimmer
  148. JSX as a Data Structure
  149. future
  150. ES6
  151. ES.Next + addons
  152. @Decorators async type annotations JSX
  153. @Stateful({ initialize (props) { return { count: 0 }; }, reducers: { increment (props, state) { return { count: state.count + 1 }; } } }) class Counter { static propTypes = { count: PropTypes.number.isRequired, increment: PropTypes.func.isRequired }; render () { const { count, increment } = this.props; return ( <button onClick={increment}> Pressed {count} times. </button> ) } }
  154. class MyComponent extends HTMLElement { ... }
  155. Aurelia Angular 2.0 React Ember
  156. tools
  157. Ember CLI
  158. Build Test Runner Dependencies Dev Server Generators Addons
  159. generators
  160. tool enforces conventions
  161. Angular React
  162. React Hot Loader
  163. live reload++
  164. Ember Inspector
  165. Render Tree Routing Data Explorer DI Container Deprecations Promises Performance
  166. Chrome Firefox IE Safari
  167. dependencies
  168. ember install:addon liquid-fire
  169. component library build step tool ...
  170. testing
  171. UI tests
  172. visit('talks/new'); fillIn('input.title', 'My Cool Talk'); click('button.submit'); andThen(() => { equal( find('ul.talks li:last').text(), 'My Cool Talk'); });
  173. Selenium
  174. “Native”
  175. pluggable renderers
  176. jQuery vs Zepto
  177. DOM vs Cocoa, QT
  178. Native UI JS for App and Network
  179. Rolling Releases
  180. challenges
  181. Angular 2 React Ember Router y y y Components y y y ES.next y y y vDOM w y w FP+immutable n w w monadic declarations n w n Data n w y Asset Pipeline n n y Addons n n y UI testing n n y Browser Tools n n y Hot Reload n y n Isomorphic w y w Native n y n Rolling Releases n n y
  182. Ember Productivity
  183. React Innovation
  184. Angular Popularity
  185. you don’t have to be productive, innovative, or popular to be successful
  186. @listochkin frontendua.im
Advertisement