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
210
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
710
Youtube like BottomNavigation
kobitokaba
0
180
Slice Your App
kobitokaba
2
1.1k
Inside Jetpack
kobitokaba
2
90
Generating and Transforming Kotlin code
kobitokaba
0
64
Conference Tourism
kobitokaba
0
230
Inside Jetpack Architecture Components
kobitokaba
0
190
Kotlinもう一歩
kobitokaba
8
15k
Inside LifecycleObserver
kobitokaba
0
80
Other Decks in Programming
See All in Programming
Swiftコードバトル必勝法
toshi0383
0
150
Android開発以外のAndroid開発経験の活かしどころ
konifar
2
700
ECMAScript、Web標準の型はどう管理されているか / How ECMAScript and Web standards types are maintained
petamoriken
3
390
How to Break into Reading Open Source
kaspth
1
190
マルチモジュールにおけるテスト最適化
fxwx23
0
200
Increased Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
210
実践!難読化ガイド
mitchan
0
120
GenU導入でCDKに初挑戦し、悪戦苦闘した話
hideg
0
150
Jakarta EE meets AI
ivargrimstad
1
350
Ebitengineの1vs1ゲーム WebRTCの活用
ponyo877
0
370
Scala におけるコンパイラエラーとの付き合い方
chencmd
2
410
A New Era of Testing
mannodermaus
2
230
Featured
See All Featured
Teambox: Starting and Learning
jrom
131
8.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
248
20k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.2k
Large-scale JavaScript Application Architecture
addyosmani
508
110k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
109
6.9k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
502
140k
Building a Scalable Design System with Sketch
lauravandoore
458
32k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
663
120k
Principles of Awesome APIs and How to Build Them.
keavy
125
16k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
36
2k
Raft: Consensus for Rubyists
vanstee
135
6.5k
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