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
Jetpack Compose - DevFest 2019
Search
Raka Adi Nugroho
September 24, 2022
Technology
140
0
Share
Jetpack Compose - DevFest 2019
latepost, jetpack compose GDG DevFest 2019 Yogyakarta
Raka Adi Nugroho
September 24, 2022
More Decks by Raka Adi Nugroho
See All by Raka Adi Nugroho
Pemrograman Web - Pertemuan 1
rakaadinugroho
0
34
Leveraging GraphQL with Kotlin Multiplatform
rakaadinugroho
0
54
Security Awareness: Web Development Process
rakaadinugroho
0
46
Open Telemetry in Web Development
rakaadinugroho
0
50
Software Architecture 101
rakaadinugroho
0
74
Coroutine x Retrofit - Android Developer Day
rakaadinugroho
0
920
Other Decks in Technology
See All in Technology
No Types Needed, Just Callable Method Check
dak2
1
1.5k
The Journey of Box Building
tagomoris
4
3.2k
20260428_Product Management Summit_tadokoroyoshiro
tadokoro_yoshiro
9
10k
AIを共同作業者にして書籍を執筆する方法 / How to Write a Book with AI as a Co-Creator
ama_ch
2
140
ハーネスエンジニアリングの概要と設計思想
sergicalsix
9
5.2k
プラットフォームエンジニアリングの実践 - AWS コンテナサービスで構築する社内プラットフォーム / AWS Containers Platform Meetup #1
literalice
1
210
マルチプロダクトの信頼性を効率良く保っていくために
kworkdev
PRO
0
170
Azure Static Web Apps の自動ビルドがタイムアウトしやすくなった状況に対応した件/global-azure2026
thara0402
0
420
AI時代における技術的負債への取り組み
codenote
1
1.7k
260420_スマートホーム採用説明 - wakinchan
wakinchan
0
120
AI バイブコーティングでキーボード不要?!
samakada
0
590
データを"持てない"環境でのアノテーション基盤設計
sansantech
PRO
1
140
Featured
See All Featured
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
380
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
94
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
420
Speed Design
sergeychernyshev
33
1.6k
Paper Plane
katiecoart
PRO
1
49k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.3k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
170
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
150
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
Music & Morning Musume
bryan
47
7.2k
The Invisible Side of Design
smashingmag
303
52k
GitHub's CSS Performance
jonrohan
1032
470k
Transcript
None
JetPack Compose
About Raka Adi Nugroho - Software Engineer Android @Tokopedia -
External Academy Reviewer @Dicoding - Android Developer @PrivyID /rakaadinugroho
JetPack Compose
None
Overview Jetpack Compose Jetpack Compose is a modern toolkit for
building native Android UI. Jetpack Compose simplifies and accelerates UI development on Android with less code, powerful tools, and intuitive Kotlin APIs.
None
History of UI Toolkit
Android Journey
Common Thing Spread across several files - MainActivity.kt / JournalFragment.kt
- fragment_journal.xml - style.xml
Core Concept - Concise and Idiomatic Kotlin - Declarative -
Compatible - Beautiful Apps - Accelerate Development
Concise and Idiomatic Kotlin
Declarative
Declarative Imperative
Compatible
Beautiful Apps
Accelerate Development
Tokopedia UI - Unify
What do we need? - Re-Usable UI Component - Single
source of truth
Hi! Jetpack Compose Future?
Jetpack Compose - Major Components - Compose UI Library -
Compose Compiler
Jetpack Compose - Major Components
Android Studio Support
Layout Preview?
# 1 Data Flow?
Data Flow The declarative nature of Compose and it's UI
components influence how data flows through a Compose application. DATA EVENT
Data Flow - Data Flows Down DATA
Data Flow - Events flow up EVENT
UI as a Tree VS COLUMN JOURNAL ITEM 1 JOURNAL
ITEM N CARD TITLE ABSTRACTION BUTTON
UI as a Tree VS COLUMN JOURNAL ITEM 1 JOURNAL
ITEM N CARD TITLE ABSTRACTION BUTTON
# 2 State Handler
UI as a Function UI=f(s)
State Handler
Existing UI UI Rendering Compose
Demo
- Flexibility - Re-Usability - Reactive Model - Less code
POV : Pros & Cons - Min. API 21 - Layout Params (Padding)
Jetpack Compose build for U & I ?
Quick Recap 1. New Way to Build UI on Android
2. As an Android Developer, you must try
end; https://github.com/rakaadinugroho/ComposePlayground