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
Modularizing and Refactoring Android App with C...
Search
kobito-kaba
July 03, 2019
Programming
0
260
Modularizing and Refactoring Android App with Clean Architecture
kobito-kaba
July 03, 2019
Tweet
Share
More Decks by kobito-kaba
See All by kobito-kaba
新規プロジェクトでやってよかったことまとめ
kobitokaba
1
840
Youtube like BottomNavigation
kobitokaba
0
220
Slice Your App
kobitokaba
2
1.2k
Inside Jetpack
kobitokaba
2
130
Generating and Transforming Kotlin code
kobitokaba
0
97
Conference Tourism
kobitokaba
0
260
Inside Jetpack Architecture Components
kobitokaba
0
220
Kotlinもう一歩
kobitokaba
8
16k
Inside LifecycleObserver
kobitokaba
0
110
Other Decks in Programming
See All in Programming
実践 Dev Containers × Claude Code
touyu
1
210
Flutterと Vibe Coding で個人開発!
hyshu
1
250
AIエージェント開発、DevOps and LLMOps
ymd65536
1
120
The state patternの実践 個人開発で培ったpractice集
miyanokomiya
0
130
Constant integer division faster than compiler-generated code
herumi
2
670
LLMは麻雀を知らなすぎるから俺が教育してやる
po3rin
3
2.2k
兎に角、コードレビュー
mitohato14
0
140
kiroでゲームを作ってみた
iriikeita
0
170
Nuances on Kubernetes - RubyConf Taiwan 2025
envek
0
170
CLI ツールを Go ライブラリ として再実装する理由 / Why reimplement a CLI tool as a Go library
ktr_0731
3
1.1k
대규모 트래픽을 처리하는 프론트 개발자의 전략
maryang
0
120
あのころの iPod を どうにか再生させたい
orumin
2
2.5k
Featured
See All Featured
Building an army of robots
kneath
306
45k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
Being A Developer After 40
akosma
90
590k
Designing for humans not robots
tammielis
253
25k
Typedesign – Prime Four
hannesfritz
42
2.8k
Raft: Consensus for Rubyists
vanstee
140
7.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
The Invisible Side of Design
smashingmag
301
51k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Transcript
None
None
None
None
None
None
None
None
https://youtu.be/GesiS2bkTKA
None
None
None
app bidding search product sell
APP BID SEARCH PRODUCT SELL
APP BID SEARCH PRODUCT SELL
APP BID SEARCH PRODUCT SELL
APP BID SEARCH PRODUCT SELL
Modularize
None
┐('~`;)┌
None
None
Inline Super Class
None
None
None
None
None
None
Inline Method
Inline Method
None
None
None
None
None
None
None
None
Why we use Clean Architecture? Why/How/What Clean Architecture? Ref:https://8thlight.com/blog/uncle-bob/2012/08/13/the-clean-architecture.html
Why CleanArch.? • Reduce & prevent spaghetti codes • Increase
readable and testable codes • Clear scope of influence
How does design CleanArch? • Separation of stable & flexible
codes. • Make Flexible code dependent only on more stable code • Make the direction of dependence one direction
Over view(※): CleanArchitecture ※:Some interfaces, or classes are omitted
Presentation Layer • View: Activity, Fragment,.. • Presenter: Express view
logic, gateway for domain
Data Layer • DataStore: Gateway for DB/API, and generate Entity
Domain Layer • Entity: Express business data • Usecase: Express
business logic, gateway for presentaion • Repository: Interface between domain and data layer
Let’s see Sample Product • Sample Product: Click button ->
change TextView as several Lang https://github.com/kiuchikeisuke/Android-Studio-CleanArchitecture-template-forKotlin/tree/demo_for_droidcon
None
None
None
None
None
None
None
None
None
None
None
Thank you