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
170
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
170
Compose Multiplatform Image Picker
easyhooon
0
230
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
96
14k
It's Worth the Effort
3n
188
29k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.4k
New Earth Scene 8
popppiees
3
2.5k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
370
Automating Front-end Workflow
addyosmani
1369
210k
My Coaching Mixtape
mlcsv
0
240
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
67k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
How to Think Like a Performance Engineer
csswizardry
28
2.7k
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 ݎಞਵ۽ ҅ࣘ...