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
Circuit 찍먹해보기(부제: Circuit 희망편)
Search
easyhooon
July 14, 2025
160
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Circuit 찍먹해보기(부제: Circuit 희망편)
easyhooon
July 14, 2025
More Decks by easyhooon
See All by easyhooon
Circuit 찍먹해보기(부제: Circuit 절망편)
easyhooon
0
160
Compose Multiplatform Image Picker
easyhooon
0
220
Featured
See All Featured
Game over? The fight for quality and originality in the time of robots
wayneb77
1
190
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
380
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
The Language of Interfaces
destraynor
162
27k
A better future with KSS
kneath
240
18k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
300
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
580
Transcript
ള Circuit ନݡ ೧ࠁӝ Circuit ൞ݎಞ
ݾର • Circuitਸ ҕࠗೞѱ ػ ҅ӝ • Circuitۆ? • Circuit
ҳઑ ߂ द • Circuit • Circuit Presenter(vs AAC ViewModel) • Circuit Navigation(vs Compose Navigation) • ܻ
Circuit ਸ ҕࠗೞѱ ػ ҅ӝ - 1 Progenitor of Compose
X ੋਊ -> AAC ViewModel ॳ݈ۄҊ? -> ঌѷחؘ Ӓۢ दח? -> ҳӖ ࢠٜ ࠗ AAC ViewModelਸ ࢎਊೞҊ חؘ?
Circuit ਸ ҕࠗೞѱ ػ ҅ӝ - 1 • AAC ViewModelਸ
ࢎਊೞ ঋח दܳ ߊѼ! -> DroidKaigi conference app ٘ܳ ೧೧ঠѷ. -> https://github.com/DroidKaigi/conference-app-2024 -> https://github.com/takahirom/Rin -> DroidKaigi ࢚కҙܻ ߑध ೨बੋ Rin ۄ࠳۞ܻо Circuit хਸ ߉ই ٜ݅য -> Circuitਸ ೧೧ঠ Droidkaigi ٘ܳ ೧ೡ ࣻ ѷҳա!
Circuit ਸ ҕࠗೞѱ ػ ҅ӝ - 2 • য় ݽ࠽ܻ౭
ੑࢎ ൞ݎ(ࢎ೦ ) • [য়T~ழজ ѐߊӝ] stateҙܻ Mavericks ীࢲ circuitө / if(kakaoAI)2024
Circuit 🔎 Circuitۆ? • Slackীࢲ ѐߊೞҊ ࢎਊੋ Kotlin & Android
জ ѐߊਸ ਤೠ ۨਕ(KMP ਗ) • UDF ӝ߈ MVI ಁఢਸ Compose ਸ ୭ೠ ഝਊೞৈ ҳഅೡ ࣻ ب۾ ਗ • Compose-driven architecture?
Screen Presenter৬ UIܳ োѾೞח Key(ध߹ ೡ) Presenter UIܳ ਤೠ
࠺ૉפझ ۽җ Data ҅க р ߸ജ ҅க ೡ, UIীѱ ࢜܂ѱ ࢤ ࢿػ Stateܳ ߈ജ UI ࢎਊীѱ ࠁৈח ചݶ, Presenter ীѱ eventSinkܳ ా೧ eventܳ ׳ Circuit + MVI 🔎 Architecture
None
None
Circuit - 1 ӝઓ AAC ViewModel ޙઁ •
Activity/Fragment & Composable Screenҗ ࢤݺӝо ܴ • Android ۖಬ ઓࢿ(ઁח ইצ٠?)ਵ۽ ੋೠ పझ ٘ ࢿ য۰ Circuit Presenter -> Circuit Presenter • Composable Screenҗ ࢤݺӝо ੌ • ࣽࣻ Kotlin ӝ߈ਵ۽ ҳഅغয য, పझ ٘ ࢿ ਊ
Composable Screenҗ ࢤݺӝо ੌ? Con fi guration Changeо ߊࢤೠݶ? •
rememberRetained ೣࣻܳ ా೧ Con fi guration Change۽ ࠗఠ ؘఠ(࢚క)ܳ ਬ ೡ ࣻ • remember : Compose ӝࠄ ઁҕ ೣࣻ۽, recomposition җীࢲ чਸ ਬ, য ו ఋੑٚ оמ • rememberRetained : Circuit ীࢲ ઁҕೞח ೣࣻ۽, recomposition, backstack, con fi guration change җীࢲ чਸ ਬ, যו ఋੑٚ оמ • rememberSaveable : Compose ӝࠄ ઁҕ ೣࣻ۽, recomposition, backstack, con fi guration change, process death ࢚ടীࢲب чਸ ਬ, primitive ఋੑա, Parcelable ҳഅ ژח Saverܳ ҳഅೠ ఋੑ݅ оמ
Circuit - 2 ӝઓ Compose Navigation ޙઁ •
Uri ৬ э ੋܳ ׳ೡ ٸ, ߹ب ੋ٬ җ ਃ • Custom Data Class Typeਸ ੋ۽ ׳ೡ ٸ, ߹ب Custom NavType ਃ • زਵ۽ startDestinationਸ ߸҃ೞחؘ য۰ • ߹ب Route Composable ҳഅ ਃ(ࠁੌ۞ ۨ) Circuit Navigation -> Circuit Navigation • ਤ৬ э ޙઁо 1ب হ
Circuit - 2 Compose Navigation ࠁੌ۞ۨ 1
Lectureܳ ׳ೞӝ ਤೠ LectureNavType
Circuit - 2 Compose Navigation ࠁੌ۞ۨ 2 List<Student>ܳ
׳ೞӝ ਤೠ StudentListNavType
Circuit - 2 Compose Navigation ࠁੌ۞ۨ 3 ઁ֎ܼ
ఋੑ ۳ചܳ ਤೠ TypeMap
Circuit - 2 Circuit Navigation ҙੋ API goTo(),
pop(), peek() startDestination ߸҃ API ਗ resetRoot()ܳ ాೠ рಞೠ ߸҃
Circuit - 2 Circuit Navigation Bundle ఋੑਵ۽ ׳ೞח
Ѫ ইפӝী ߹ب NavType ਃ X زೞ۰ח ചݶ ࢤࢿ ۄఠী ؘఠܳ ׳ೞח ߑध
Circuit - 2 Circuit Navigation ߹ب Bundle य
җ হ, Screen ё ۄఠ۽ द Ӕ оמ
✅ ViewModel न Composable ӝ߈ Presenter + UI ۽ ചݶ
ҳഅ ✅ Circuit ઁҕೞח ъ۱ೞҊ рಞೠ Navigationਸ ࢎਊೞৈ ചݶ ജө ా ҙܻ ✅ Hilt, Dagger ١ নೠ DI ۄ࠳۞ܻ ా ਗ koin... Presentation Layerܳ Compose-driven architecture۽ ҳࢿ оמ Circuit ܻ 🗒
ۨಌ۠झ • https://slackhq.github.io/circuit/ • https://velog.io/@mraz3068/series/Circuit • Modern Compose Architecture with
Circuit by Zac Sweers and Kieran Elliott • https://chrisbanes.me/posts/retaining-beyond-viewmodels/ • https://x.com/JimSproch/status/1561024830786322433
Q&A хࢎפ ূ Circuit ݎಞਵ۽ ҅ࣘ...