$30 off During Our Annual Pro Sale. View Details »

RIBs

 RIBs

About mobile architecture using RIBs from uber

Naoki ISHIKAWA

March 08, 2018
Tweet

More Decks by Naoki ISHIKAWA

Other Decks in Technology

Transcript

  1. RIBsΛ༻͍ͨϞόΠϧ ΞʔΩςΫνϟઃܭ Naoki ISHIKAWA (@jarinosuke)
 try!Swift Tokyo After talks

  2. Self Introduction • ੴ઒௚थ Naoki ISHIKAWA • @jarinosuke • iOS

    Engineer at merpay, Inc
  3. uber/RIBs

  4. None
  5. Agenda • 1.What is RIBs? • 2.Motivation • 3.Inside of

    RIBs • Overview • Units • 4.Conclusion
  6. 1.What is RIBs? • Shared architecture between iOS/Android • Testability

    and Isolation • Scalable between hundreds of engineers in Uber
  7. 2.Motivation • Problem • MVC with massive view controllers •

    Technical debt accumulated by adding new features • Try • Keep high-quality core experience for users • Allow radical experimentation/test in product
  8. 3.Inside of RIBs

  9. None
  10. RIBs units

  11. Router Attaching/Detaching child RIBs

  12. Interactor Handle all business logic that will be displayed on

    view
  13. Builder Define all dependences and instantiate classes in RIB

  14. Presenter Manage communications between Interactor and View

  15. View(Controller) ViewController with no logic Just display data from Presenter

  16. Communication between RIBs

  17. 4.Conclusion • Business logic tree provided by RIBs can drive

    • Isolation of codes • Scalability in team and business • uber/RIBs can be one of the good choice of mobile architecture
  18. !