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
クリーンアーキテクチャ導入が、 どのような作業に影響を及ぼすのか考察
Search
Yuto Nakano
January 21, 2020
Technology
0
110
クリーンアーキテクチャ導入が、 どのような作業に影響を及ぼすのか考察
プロジェクトにクリーンアーキテクチャを導入して起きた変化を表に視覚化しました。
Yuto Nakano
January 21, 2020
Tweet
Share
More Decks by Yuto Nakano
See All by Yuto Nakano
Grow with people, not just features
yutonakano
0
6
機能より人で伸ばす - 個人開発アプリ収益化までの道 -
yutonakano
0
100
同時に複数購読可能なサブスクリプションを提供する
yutonakano
0
89
武蔵小山infoアプリ
yutonakano
0
26
Other Decks in Technology
See All in Technology
仕様は“書く”より“語る” - 分断を超えたチーム開発の実践 / 20251115 Naoki Takahashi
shift_evolve
PRO
1
950
JavaScript パーサーに using 対応をする過程で与えたエコシステムへの影響
baseballyama
1
100
仕様駆動 x Codex で 超効率開発
ismk
2
1.5k
Progressive Deliveryで支える!スケールする衛星コンステレーションの地上システム運用 / Ground Station Operation for Scalable Satellite Constellation by Progressive Delivery
iselegant
1
170
ある編集者のこれまでとこれから —— 開発者コミュニティと歩んだ四半世紀
inao
5
3.2k
身近なCSVを活用する!AWSのデータ分析基盤アーキテクチャ
koosun
0
1.3k
“それなりに”安全なWebアプリケーションの作り方
xryuseix
0
380
Perlブートキャンプ
hatena
0
120
Flutterコントリビューションのススメ
d_r_1009
1
410
ABEJA FIRST GUIDE for Software Engineers
abeja
0
3.2k
AI × クラウドで シイタケの収穫時期を判定してみた
lamaglama39
1
300
Capitole du Libre 2025 - Keynote - Cloud du Coeur
ju_hnny5
0
110
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
The Cult of Friendly URLs
andyhume
79
6.7k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Faster Mobile Websites
deanohume
310
31k
4 Signs Your Business is Dying
shpigford
186
22k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Unsuck your backbone
ammeep
671
58k
Why Our Code Smells
bkeepers
PRO
340
57k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
11
930
Transcript
クリーンアーキテクチャ導入が、 どのような作業に影響を及ぼすのか考察
自己紹介
中野 湧仁 iOS @yuto_nakano44
中野 湧仁 iOS @yuto_nakano44
What’s fanc?
新機能ゾクゾク開発中!!
本題
クリーンアーキテクチャ導入が、 どのような作業に影響を及ぼすのか考察
調べた目的: • 自分自身、クリーンアーキテクチャを導入することのメリットが明確に理解できて いなかった • fancアプリで今後のグロースに向け、クリーンアーキテクチャ導入した。導入に より、どの作業が短縮され、開発の高速化を実現しているのかを視覚化し、理 解を深めたい
一つのタスクに対して時間を使っていること: 開発前 開発中 開発後 • 仕様確認 • 担当分け • 実装プラン検討
• コードリーディング • ロジックを考える • コードを書く • PR作成 • コードレビュー • 保守作業
クリーンアーキテクチャ導入前 • Requestの呼び出し • データをインスタンス変数で管理 Model • Model内のインスタンス変数を RxSwiftで購読 •
表示・ドメインロジック実装 ViewController
クリーンアーキテクチャ導入後
クリーンアーキテクチャ導入後 ViewController View Presenter Presentation Layer UseCase Repository Domain Layer
Entity DataStore Data Layer Model
• レイヤーやクラスが責務によって分かれた • 開発者同士で共通認識が生まれた • 実装に統一感が生まれた • ファイル(クラス)数が増えた クリーンアーキテクチャ導入後の変化:
一つのタスクに対して時間を使っていることと照らし合わせ て検証: 速度向上 変化なし 遅くなった
クリーンアーキテクチャ後の開発速度: 機能開発前 仕様確認 実装プラン検討 担当分け レイヤー・クラス が分かれた 共通認識ができた 実装に統一感ができた ファイル数が増えた
機能開発中 コードリーディン グ ロジックを 考える コードを 書く レイヤー・クラス が分かれた 共通認識ができた
実装に統一感ができた ファイル(クラス) 数が増えた クリーンアーキテクチャ後の開発速度:
機能開発後 PR作成 コードレビュー 保守作業 レイヤー・クラス が分かれた 共通認識ができた 実装に統一感ができた ファイル(クラス) 数が増えた
クリーンアーキテクチャ後の開発速度:
fancアプリにおいて特に効果が高かったポイント: 高速開発 ポイント1 高速開発 ポイント2 高速開発 ポイント3 共通認識の用語やオブジェクトができ、 タスクの分業や、見積もりがしやすくなった! クラスやメソッドの役割が明確になり、
保守しやすくなった! 属人化した処理が書けなくなり、 コードレビュー・保守作業が高速化 !
• なぜ,クリーンアーキテクチャを導入した方が、高速開発しやすくなるのか自分 の手を動かしながら理解できた。 • プロジェクト経験が少ないので、他プロジェクトの事例を学び、理解を深めて いきたい。 まとめ:
Thank You!