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
RIBs
Search
Naoki ISHIKAWA
March 08, 2018
Technology
2
1.7k
RIBs
About mobile architecture using RIBs from uber
Naoki ISHIKAWA
March 08, 2018
Tweet
Share
More Decks by Naoki ISHIKAWA
See All by Naoki ISHIKAWA
パラレルの通話を支える iOS アプリ上での技術
jarinosuke
0
2.1k
メルペイのエンジニアリング組織の変化と目指すチーム像
jarinosuke
5
6.3k
US 版 Mercari をまるごと1から作り直した話
jarinosuke
2
4.3k
メルカリiOSアプリ開発の現状とこれから / Mercari Day 2017
jarinosuke
3
6.7k
Drink Meetup with Mercari #36
jarinosuke
0
1.2k
Switching Icon.png depending on each environment
jarinosuke
2
11k
Other Decks in Technology
See All in Technology
Claude CodeでKiroの仕様駆動開発を実現させるには...
gotalab555
3
970
九州の人に知ってもらいたいGISスポット / gis spot in kyushu 2025
sakaik
0
120
Claude Codeは仕様駆動の夢を見ない
gotalab555
23
6.1k
Eval-Centric AI: Agent 開発におけるベストプラクティスの探求
asei
0
110
마라톤 끝의 단거리 스퍼트: 2025년의 AI
inureyes
PRO
1
720
Amazon GuardDuty での脅威検出:脅威検出の実例から学ぶ
kintotechdev
0
100
Oracle Cloud Infrastructure:2025年7月度サービス・アップデート
oracle4engineer
PRO
1
160
大規模イベントに向けた ABEMA アーキテクチャの遍歴 ~ Platform Strategy 詳細解説 ~
nagapad
0
210
JAWS AI/ML #30 AI コーディング IDE "Kiro" を触ってみよう
inariku
3
350
【CEDEC2025】『Shadowverse: Worlds Beyond』二度目のDCG開発でゲームをリデザインする~遊びやすさと競技性の両立~
cygames
PRO
1
340
家族の思い出を形にする 〜 1秒動画の生成を支えるインフラアーキテクチャ
ojima_h
3
870
Tableau API連携の罠!?脱スプシを夢見たはずが、逆に依存を深めた話
cuebic9bic
3
220
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Docker and Python
trallard
45
3.5k
Producing Creativity
orderedlist
PRO
347
40k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Designing Experiences People Love
moore
142
24k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Building Applications with DynamoDB
mza
95
6.5k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Agile that works and the tools we love
rasmusluckow
329
21k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Transcript
RIBsΛ༻͍ͨϞόΠϧ ΞʔΩςΫνϟઃܭ Naoki ISHIKAWA (@jarinosuke) try!Swift Tokyo After talks
Self Introduction • ੴथ Naoki ISHIKAWA • @jarinosuke • iOS
Engineer at merpay, Inc
uber/RIBs
None
Agenda • 1.What is RIBs? • 2.Motivation • 3.Inside of
RIBs • Overview • Units • 4.Conclusion
1.What is RIBs? • Shared architecture between iOS/Android • Testability
and Isolation • Scalable between hundreds of engineers in Uber
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
3.Inside of RIBs
None
RIBs units
Router Attaching/Detaching child RIBs
Interactor Handle all business logic that will be displayed on
view
Builder Define all dependences and instantiate classes in RIB
Presenter Manage communications between Interactor and View
View(Controller) ViewController with no logic Just display data from Presenter
Communication between RIBs
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
!