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
Android Development in 2019. #devFestDakar
Search
Souleymane Sidibe
December 14, 2019
Programming
0
110
Android Development in 2019. #devFestDakar
It's all about the tools we can use to build better android apps.
Souleymane Sidibe
December 14, 2019
Tweet
Share
More Decks by Souleymane Sidibe
See All by Souleymane Sidibe
Android new UI ToolKit: Jetpack Compose
soulesidibe
0
160
Code sharing with Kotlin multi-platform
soulesidibe
0
110
Android App Bundle
soulesidibe
0
83
Proguard: The open source optimizer for Java bytecode
soulesidibe
2
98
Kotlin why you should consider using it
soulesidibe
0
110
Les AsyncTasks
soulesidibe
0
64
Lightning talk : La trousse du développeur android
soulesidibe
0
64
Other Decks in Programming
See All in Programming
IFSによる形状設計/デモシーンの魅力 @ 慶應大学SFC
gam0022
1
310
インターン生でもAuth0で認証基盤刷新が出来るのか
taku271
0
190
生成AIを使ったコードレビューで定性的に品質カバー
chiilog
1
270
余白を設計しフロントエンド開発を 加速させる
tsukuha
7
2.1k
高速開発のためのコード整理術
sutetotanuki
1
400
CSC307 Lecture 06
javiergs
PRO
0
690
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
610
AIで開発はどれくらい加速したのか?AIエージェントによるコード生成を、現場の評価と研究開発の評価の両面からdeep diveしてみる
daisuketakeda
1
2.5k
15年続くIoTサービスのSREエンジニアが挑む分散トレーシング導入
melonps
2
220
24時間止められないシステムを守る-医療ITにおけるランサムウェア対策の実際
koukimiura
1
100
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
650
Rust 製のコードエディタ “Zed” を使ってみた
nearme_tech
PRO
0
190
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.9k
GraphQLとの向き合い方2022年版
quramy
50
14k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
430
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
The Limits of Empathy - UXLibs8
cassininazir
1
220
Practical Orchestrator
shlominoach
191
11k
Claude Code のすすめ
schroneko
67
210k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.1k
From π to Pie charts
rasagy
0
120
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
290
Technical Leadership for Architectural Decision Making
baasie
1
250
Transcript
About me •Souleymane Sidibé •Kotlin/Android dev •Android developer CoinAfrique •Developer
of KobiriApp •@soulesidibe
Android development in 2019 @soulesidibe 2
The purpose of this talk
The purpose of this talk • The tools • How
we build android apps • Is it worth it to build native apps • ⤴ Flutter, Ionic, React native ⤴ = native apps
Numbers
Numbers • Android 1.0 (Relese date 2008) • Android 2.3
(Relese date 2011) Gingerbread • Android 10 (2019) Source: Statcounter
Numbers • 76% of the Mobile Operating system market share.
Worldwide • 83% of Africa Market share • 90% of Senegal Market share • 40% of OS market share behind Windows. Source: Statcounter
Numbers • The most popular OS in Africa • The
most accessible OS (cheap phones) • An open OS • Millions of apps available
Build an android App
Basic tools
Build an android App Compatible with Java Great Tooling Null
Safety Easy to learn Coroutines Java is not dead yet Type inference
Build an android App
Build an android App
Build an android App
Build an android App Android App Bundle Dynamic Feature Instant
App Play Console Internal Test
And so many more…
Architecture A style and method of design and construction.
Architecture • Onboarding new devs is easier • Focus on
the feature not on the plumbing • The team speak the same language • Write testable code • Team size: 1+
Architecture • Old Android (XML Activity) • MVP (Model View
Presenter) • MVVM (Model View ViewModel)
Google Opinion
Testing
Test • FOR ME • UI Testing is mandatory •
Unit testing is good • 100% coverage means nothing
Test • Unit Testing(Junit, Mockito, etc) • UI Testing (Espresso,
Robolectric) • Firebase Test Lab
Wrap up
Wrap up • Native android development is stable • Still
evolving • Huge community(Conferences, open source, libraries) • At scale, “native is best”
Alternatives
Alternatives • React Native(js) • Ionic(js) • Flutter(dart)
Pros • One code base/one team • Well known web
technologies • Easy to find talented devs
Cons • One code base but 2 targets • Javascript
• Some native features not available for both android and IOS
Conclusion • Android for life! • But Flutter is really
great • Learn both!
Thanks!