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
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Takahiro Hiasa
March 22, 2017
Programming
1.6k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
790
1つのアプリを開発する複数の職能横断チームの運用と今後 ~ タクシーアプリ「GO」の現状と未来 ~
takahia1988
1
9k
初めてのDroidKaigiプラチナスポンサー 〜エンジニアと作るスポンサー企画〜
takahia1988
0
330
どうする?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
さぁV100、メモリをお食べ・・・
nilpe
0
140
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
2k
Inside Stream API
skrb
1
700
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
220
AutonomyとControlのあいだ:Graflowで記述するAIエージェント協調
myui
0
120
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
570
OSもどきOS
arkw
0
560
技術記事、AIに書かせるか、自分で書くか? 〜それでも私が自分の手で書く理由〜 / #QiitaConference
jnchito
2
1.4k
AI時代のUIはどこへ行く?その2!
yusukebe
21
7.1k
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
230
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2k
Creating Composable Callables in Contemporary C++
rollbear
0
100
Featured
See All Featured
Bash Introduction
62gerente
615
220k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
850
Skip the Path - Find Your Career Trail
mkilby
1
150
Odyssey Design
rkendrick25
PRO
2
690
BBQ
matthewcrist
89
10k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
390
For a Future-Friendly Web
brad_frost
183
10k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
New Earth Scene 8
popppiees
3
2.3k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
230
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/