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
Application Coordinatorを利用した画面遷移
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Takahiro Hiasa
March 22, 2017
Programming
1.6k
0
Share
Application Coordinatorを利用した画面遷移
https://github.com/takahia1988/ApplicationCoordinatorSample
Takahiro Hiasa
March 22, 2017
More Decks by Takahiro Hiasa
See All by Takahiro Hiasa
EMとしての醍醐味
takahia1988
0
120
日浅流、 エンジニアリングマネージャーのしごと
takahia1988
0
780
1つのアプリを開発する複数の職能横断チームの運用と今後 ~ タクシーアプリ「GO」の現状と未来 ~
takahia1988
1
8.9k
初めてのDroidKaigiプラチナスポンサー 〜エンジニアと作るスポンサー企画〜
takahia1988
0
320
どうする?GOする!LeSS導入する!?
takahia1988
0
5.2k
JapanTaxi × MOV = GOの開発体制とiOS14対応
takahia1988
0
1.5k
KotlinでRealmを扱う
takahia1988
1
1.3k
社内環境で紐解くfastlane match
takahia1988
0
900
Other Decks in Programming
See All in Programming
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
3
520
TSKaigi2026-静的解析への投資がAI時代のコード品質を支える ── カスタムESLintルールの設計と運用
hayatokudou
5
990
開発とはなにか、Essenceカーネルで見えるもの
ukin0k0
0
200
Agentic UI beyond Chats Architecture Patterns & Open Standards @ngMunich 05/2026
manfredsteyer
PRO
0
140
20年以上続くプロダクトでも使い続けられる静的解析ツールを求めて
matsuo_atsushi
0
160
リセットCSSを1行消したらアクセシビリティが向上した話
pvcresin
4
530
Spec-Driven Development with AI Agents (Workshop, May 2026)
antonarhipov
4
420
AI駆動開発勉強会 広島支部 第一回勉強会 AI駆動開発概要とワークショップ
hayatoshimiu
0
340
Firefoxにコントリビューションして得られた学び
ken7253
2
170
How We Practice Exploratory Testing in Iterative Development( #scrumniigata ) / 反復開発の中で、探索的テストをどう実施しているか
teyamagu
PRO
3
1.1k
Agent Skills を社内で育てる仕組み作り
jackchuka
1
2.3k
SkillsをS3 Filesに置く時のあれこれ
watany
4
1.7k
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
55
8.1k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
290
Agile that works and the tools we love
rasmusluckow
331
21k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
260
The agentic SEO stack - context over prompts
schlessera
0
780
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
340
Statistics for Hackers
jakevdp
799
230k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Claude Code のすすめ
schroneko
67
220k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
Transcript
Application Coordinatorを利用した画面遷移 potatotips #38 Mar/22/2017 Takahiro Hiasa connpass: thiasa1 Twitter:
@takahia
Who • 楽天株式会社2012年度新卒 • iOSエンジニアとサーバーサイドエンジニア を隔年ごとに行き来してます • 担当してきたサービス (楽天オークション、ラクマ) •
C2Cサービスが大好き!! • お酒好き • 最近の悩みは... 2 無類のビールと 日本酒好き❤
Who • 楽天株式会社2012年度新卒 • iOSエンジニアとサーバーサイドエンジニア を隔年ごとに行き来してます • 担当してきたサービス (楽天オークション、ラクマ) •
C2Cサービスが大好き!! • お酒好き • 最近の悩みは...毎年の健康診断でだんだ んと尿酸値が増えていっていること 3 無類のビールと 日本酒好き❤
4 駐車場スペースシェアリングサービス のラクパをリリースしました!
5 今日はラクパで採用した アーキテクチャの一部を紹介します!
ラクパのアーキテクチャの3本柱 6 Clean Architecture Application Coordinator Factory Pattern
今日はここだけ! 7 Clean Architecture Application Coordinator Factory Pattern
Application Coordinatorとは? • 画面遷移をコーディネートするもの • VCが遷移先を知る必要がないという点では VIPERのwireframeと同じスタンス • storyboardの画面遷移部分をコードに切り出 したものと考えてもらうとイメージしやすい
8
9 ラクパのPresentation Layerの構成の概要 Application Coordinator Transition Protocol ViewController Presenter ContorollersFactory
Presenter Protocol
10 画面遷移の実装 Application Coordinator Transition Protocol ViewController Presenter ContorollersFactory Presenter
Protocol
Transition Protocol 11
ViewController 12
Application Coordinator 13
Coordinatorを連結することも 14
Application Coordinatorのメリット • 画面遷移が集約されているため、Coordinatorを見るだけで、 画面遷移を理解することができる • 同じ画面で経路によって画面遷移が異なる場合、VCが遷移 元を気にする必要があったが、Application Coordinatorを利 用すると、その必要がなくなる。
• 一連の画面遷移をCoordinatorでまとめることで、画面遷移の 再利用化がしやすい • VCの修正をすることなしに、ダミーのVCと切り替えることがで きる 15
今後の課題 deeplinkによる画面遷移のハンドリングを Application Coordinatorでどう実現するか。 16
Sample Code https://github.com/takahia1988/ApplicationCoordinatorSample 17
楽天は優秀なアプリエンジニアを募集してます! 18 http://corp.rakuten.co.jp/careers/engineering/