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
Wantedly Peopleがたどり着いたアーキテクチャ
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Yu Tawata
March 16, 2017
Technology
5.3k
1
Share
Wantedly Peopleがたどり着いたアーキテクチャ
Yu Tawata
March 16, 2017
More Decks by Yu Tawata
See All by Yu Tawata
SwiftUIを導入したアプリ設計
yuta24
4
3.1k
try! Serverless App with Swift
yuta24
2
570
再利用可能なUI Componentsを利用したアプリ開発
yuta24
12
3.6k
Wantedly Peopleの連絡先一覧について
yuta24
1
5.8k
Other Decks in Technology
See All in Technology
Digitization部 紹介資料
sansan33
PRO
1
7.3k
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3k
Code Interpreter で、AIに安全に コードを書かせる。
yokomachi
0
7k
Shipping AI Agents — Lessons from Production
vvatanabe
0
100
扱える不確実性を増やしていく - スタートアップEMが考える「任せ方」
kadoppe
0
290
レビューしきれない?それは「全て人力でのレビュー」だからではないでしょうか
amixedcolor
0
300
AWS Agent Registry の基礎・概要を理解する/aws-agent-registry-intro
ren8k
3
360
こんなアーキテクチャ図はいやだ / Anti-pattern in AWS Architecture Diagrams
naospon
1
440
データを"持てない"環境でのアノテーション基盤設計
sansantech
PRO
1
110
ハーネスエンジニアリングをやりすぎた話 ~そのハーネスは解体された~
gotalab555
4
1.5k
Standards et agents IA : un tour d’horizon de MCP, A2A, ADK et plus encore
glaforge
0
140
Master Dataグループ紹介資料
sansan33
PRO
1
4.6k
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
Between Models and Reality
mayunak
3
260
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
800
Docker and Python
trallard
47
3.8k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
150
ラッコキーワード サービス紹介資料
rakko
1
3M
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
130
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
180
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.6k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
140
Designing Powerful Visuals for Engaging Learning
tmiket
1
340
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Transcript
Yu TAWATA 8BOUFEMZ1FPQMF͕ ͨͲΓண͍ͨΞʔΩςΫνϟ CAMPFIRE iOS #1
シゴトでココロオドル w ܦྺ w ΧʔφϏϛυϧΣΞ։ൃɹ̎ w ιʔγϟϧήʔϜ։ൃʢαʔόαΠυʣɹ̎ w *P5αʔϏε։ൃʢαʔόαΠυɺJ04ʣɹ̍ w
໊ཧΞϓϦ։ൃʢJ04ʣɹϲ݄ ଟాɹါ :V5"8"5" (JU)VCZVUB ࣗݾհ
シゴトでココロオドル
シゴトでココロオドル
シゴトでココロオドル アプリ設計
シゴトでココロオドル MVC MVP MVVM VIPER Clean Architecture View Controller Model
View (Controller) Presenter Model View (Controller) ViewModel Model View (Controller) Presenter Entity Presenter Layer Domain Layer Data Layer Interactor Router
シゴトでココロオドル 0 → 1
シゴトでココロオドル × MVVM ×
シゴトでココロオドル w "1*ͷྻɺฒྻϦΫΤετΛѻ͑Δ w Χʔυը૾Ξοϓ w Ϛονϯά w ໊ొʜFUD w
σʔλͷมߋΛଞը໘ʹөͰ͖Δ w ΦϑϥΠϯ໊࣌ใΛӾཡͰ͖Δ Requirements
シゴトでココロオドル w ը໘ఔ w εΩϟϯ w औΓࠐΈ֬ೝ w ϓϩϑΟʔϧࢀরʜFUD Minimal-Specification
シゴトでココロオドル • 実装コストが低め • コードの重複は少ない • ViewModelの役割が⼤大きい MVVM+RxSwift+Realm
シゴトでココロオドル 1 → 10
シゴトでココロオドル MVVM + Interactor + Router × ×
シゴトでココロオドル
シゴトでココロオドル
シゴトでココロオドル • 20画⾯面以上 • 複数の画⾯面に同じ操作を⼊入れる • 連絡先への追加、削除 • カード画像アップ •
DeepLink Minimal-Specification
シゴトでココロオドル View (Controller) ViewModel
シゴトでココロオドル View (Controller) ViewModel Interactor View (Controller) ViewModel
シゴトでココロオドル • コードの重複を抑えることができた • ViewModelの役割が⼩小さくなった MVVM+Interactor+Router+RxSwift+Realm
シゴトでココロオドル MVC MVP MVVM VIPER Clean Architecture View Controller Model
View (Controller) Presenter Model View (Controller) ViewModel Model View (Controller) Presenter Entity Presenter Layer Domain Layer Data Layer Interactor Router
シゴトでココロオドル End • 0 → 1 • 最⼩小の仕様を実装する • MVVM
• アプリ設計は必要最低限 • 1 → 10 • 機能を拡充、ユーザ体験をあげる • MVVM + Interactor + Router • より責務を明確にしたアプリ設計へ
シゴトでココロオドル THANK YOU