Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Circuit 찍먹해보기(부제: Circuit 희망편)
Search
easyhooon
July 14, 2025
180
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
180
Compose Multiplatform Image Picker
easyhooon
0
230
Featured
See All Featured
The Spectacular Lies of Maps
axbom
PRO
1
1.1k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
390
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
690
エンジニアに許された特別な時間の終わり
watany
109
250k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.7k
How to Ace a Technical Interview
jacobian
280
24k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.8k
Google's AI Overviews - The New Search
badams
0
1.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
200
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
600
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
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 ݎಞਵ۽ ҅ࣘ...