Upgrade to Pro — share decks privately, control downloads, hide ads and more …

“Predictable state container” and DataBinding

“Predictable state container” and DataBinding

Slide for potatotips #23 http://connpass.com/event/21750/

---

* Try to introduce “Explosive growth of JavaScript” into Android Java world
* Implement Droidux : rackt/redux for Android
* More at DroidKaigi 2016 !!!!!!!!!!!! (when my CFP is accepted... :p)

Masayuki Izumi

November 24, 2015
Tweet

More Decks by Masayuki Izumi

Other Decks in Programming

Transcript

  1.  > Masayuki IZUMI a.k.a. @izumin5210 > Rekimoto Lab. at

    the University of Tokyo > Wantedly, Inc. > Rubyist / Androider / {Java,Type}Scripter
  2. How do you feel “Front-end JavaScript” ? \ jQuery has

    dead ! / \ Backbone has dead ! / \ AngularJS has dead ! /
  3. How do you feel “Front-end JavaScript” ? \ jQuery has

    dead ! / \ Backbone has dead ! / \ AngularJS has dead ! / \ This is generation Flux ! /
  4. How do you feel “Front-end JavaScript” ? \ jQuery has

    dead ! / \ Backbone has dead ! / \ AngularJS has dead ! / \ This is generation Flux ! / \ What’s the Flux ?! Let’s Redux ! /
  5. How do you feel “Front-end JavaScript” ? \ jQuery has

    dead ! / \ Backbone has dead ! / \ AngularJS has dead ! / \ This is generation Flux ! / \ What’s the Flux ?! Let’s Redux ! /
  6. In the meantime, the latest and greatest JavaScript framework comes

    around every sixteen minutes. - A JS framework on every table * * http://blog.livedoor.jp/sasata299/archives/51966228.html
  7. * To build user interface * To handler user interaction

    * To manage application states * ... Common purpose of JS and Android Java
  8. * To build user interface * To handler user interaction

    * To manage application states * ... Common purpose of JS and Android Java Try to introduce “Exprosive grouth of JavaScript” into Android Java
  9. * Focus on: - “How to handle user interaction” -

    “How to manage application states” In this talk...
  10. * MVC (Model - View - Controller) > Android では

    MVC より MVP の方がいいかもしれない > 実は Android では MVC の採用は結構つらいものがあります ** Applicatoin architecture on Android * http://konifar.hatenablog.com/entry/2015/04/17/010606 ** [ Android ] ‒ これからの「設計」の話をしよう http://tech.recruit-mp.co.jp/mobile/android-architecture/
  11. * MVC (Model - View - Controller) > Android では

    MVC より MVP の方がいいかもしれない > 実は Android では MVC の採用は結構つらいものがあります ** * MVP (Model - View - Presenter) * The Clean Architecture Applicatoin architecture on Android * http://konifar.hatenablog.com/entry/2015/04/17/010606 ** [ Android ] ‒ これからの「設計」の話をしよう http://tech.recruit-mp.co.jp/mobile/android-architecture/
  12. * MVW (Model - View - Whatever) e.g. AngularJS 1.x,

    Backbone.js, etc. Applicatoin architecture on JavaScript
  13. * MVW (Model - View - Whatever) e.g. AngularJS 1.x,

    Backbone.js, etc. Facebook: “leading to a tangled weave of data flow and unpredictable results” Applicatoin architecture on JavaScript
  14. * MVW (Model - View - Whatever) e.g. AngularJS 1.x,

    Backbone.js, etc. Facebook: leading to a tangled weave of data flow and unpredictable results * Flux - “Flux eschews MVC in favor of a unidirectional data flow” * * Redux - “a predictable state container for JavaScript apps.” ** Applicatoin architecture on JavaScript * https://facebook.github.io/flux/ ** http://redux.js.org/
  15. * MVW (Model - View - Whatever) e.g. AngularJS 1.x,

    Backbone.js, etc. Facebook: leading to a tangled weave of data flow and unpredictable results * Flux - “Flux eschews MVC in favor of a unidirectional data flow” * * Redux - “a predictable state container for JavaScript apps.” ** Applicatoin architecture on JavaScript * https://facebook.github.io/flux/ ** http://redux.js.org/
  16. * Try to introduce “Explosive growth of JavaScript” into our

    world - Android Java:D * Implement Droidux : rackt/redux for Android - Undirectional data flow - Single state tree - Bindable states to views using DataBinding - Implement redo/undo easily - Try to use Rx + DataBinding + predictable data container * More at DroidKaigi 2016 !!!!!!!!!!!! - when my CFP is accepted... Conclusion