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
0
130
Jetpack Compose - DevFest 2019
latepost, jetpack compose GDG DevFest 2019 Yogyakarta
Raka Adi Nugroho
September 24, 2022
Tweet
Share
More Decks by Raka Adi Nugroho
See All by Raka Adi Nugroho
Pemrograman Web - Pertemuan 1
rakaadinugroho
0
21
Leveraging GraphQL with Kotlin Multiplatform
rakaadinugroho
0
34
Security Awareness: Web Development Process
rakaadinugroho
0
33
Open Telemetry in Web Development
rakaadinugroho
0
36
Software Architecture 101
rakaadinugroho
0
54
Coroutine x Retrofit - Android Developer Day
rakaadinugroho
0
880
Other Decks in Technology
See All in Technology
Segment Anything Modelの最新動向:SAM2とその発展系
tenten0727
0
780
Jamf Connect ZTNAとMDMで実現! 金融ベンチャーにおける「デバイストラスト」実例と軌跡 / Kyash Device Trust
rela1470
1
200
リモートワークで心掛けていること 〜AI活用編〜
naoki85
0
150
[OCI Technical Deep Dive] OracleのAI戦略(2025年8月5日開催)
oracle4engineer
PRO
1
170
いかにして命令の入れ替わりについて心配するのをやめ、メモリモデルを愛するようになったか(改)
nullpo_head
7
2.6k
はじめての転職講座/The Guide of First Career Change
kwappa
4
4k
AI時代の大規模データ活用とセキュリティ戦略
ken5scal
0
140
Findy Freelance 利用シーン別AI活用例
ness
0
500
開発 × 生成AI × コミュニケーション:GENDAの開発現場で感じたコミュニケーションの変化 / GENDA Tech Talk #1
genda
0
230
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
6.3k
バクラクによるコーポレート業務の自動運転 #BetAIDay
layerx
PRO
1
950
「AIと一緒にやる」が当たり前になるまでの奮闘記
kakehashi
PRO
3
150
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Navigating Team Friction
lara
188
15k
Side Projects
sachag
455
43k
A Tale of Four Properties
chriscoyier
160
23k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
Code Review Best Practice
trishagee
69
19k
The Cost Of JavaScript in 2023
addyosmani
51
8.8k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Designing for Performance
lara
610
69k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
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