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
La modularisation dans le développement Android
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Yves Kalume
January 13, 2022
Programming
19
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
La modularisation dans le développement Android
Yves Kalume
January 13, 2022
More Decks by Yves Kalume
See All by Yves Kalume
Bringing AI to Android With Gemini
yveskalume
0
11
Dompting the Elephant: Making Sense of Gradle for Android Developers
yveskalume
0
42
Practical AI for Android Developers with Android Studio’s AI Agent
yveskalume
0
31
Designing scalable Compose APIs
yveskalume
1
150
Demystifying Memory Leaks in Android
yveskalume
2
150
L’essentiel de Git et Github en max 20 minutes
yveskalume
1
58
Traitement des annotations en Kotlin
yveskalume
1
41
Modern Android Architecture
yveskalume
1
110
GDSC Alumni retour d’experience
yveskalume
0
32
Other Decks in Programming
See All in Programming
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
280
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
300
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
180
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
650
技術的負債解消で開発者の未来を開く- AIの力でコード刷新
kmd2kmd
0
120
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
180
A2UI という光を覗いてみる
satohjohn
1
170
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
570
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
140
dRuby over BLE
makicamel
2
400
Oxcを導入して開発体験が向上した話
yug1224
4
350
どこまでゆるくて許されるのか
tk3fftk
0
280
Featured
See All Featured
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
150
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Evolving SEO for Evolving Search Engines
ryanjones
0
230
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
590
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
380
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
210
A better future with KSS
kneath
240
18k
Become a Pro
speakerdeck
PRO
31
6k
Transcript
La modularisation dans le développement Android Yves Kalume Lead, GDSC
Esisalama Lubumbashi
Modularisation,quid ?
App -> manifest -> Java -> src -> data ->
ui -> home -> HomeActivity.kt -> HomeViewModel.kt ... -> res -> layout -> activity_home.xml -> activity_search.xml -> item_content.xml
“It is not enough for code to work.” - Uncle
Bob
None
:app
Modulariser Décomposer une grosse application en modules, qui peuvent être
développés et améliorés indépendamment
App -> java ... -> HomeActivity -> HomeViewModel -> res
-> layout -> activity_home.xml -> ... Search -> java ... -> SeachActivity -> SearchViewModel -> res -> layout -> activity_search.xml -> ... plugins { id 'com.android.application' … } dependencies { implementation project(":search") … } plugins { id 'com.android.library' … }
Avantages
Maintenable et Scalable
:module1 :module2 :module3
Speed up build
App module1 App module2 module3
Testable & Reusable
App module1 App module2 module3
Dynamic delivery (feature module)
App :fonctionnalité A :fonctionnalité B :premium
Bonnes pratiques
Layer modularization UseCases,Enitity (RepositoryInterface) Repositories,DataSources,DTO Views,ViewModels
Gestion des dépendances • implementation Vs api • Dettes techniques
moduleA moduleB implementation project(":moduleA") implementation("com.lorem.lib:1.0") api("com.lorem.lib:1.0") • Dependances circulaire moduleA moduleB X Module1 build.gradle Module2 build.gradle Module3 build.gradle
Modularisation,quand ?
Maintenant ! Mais calmons nos ardeurs 👀
Merci !