Skip to content

Latest commit

ย 

History

History
34 lines (27 loc) ยท 2.09 KB

File metadata and controls

34 lines (27 loc) ยท 2.09 KB

๐ŸŒ– ๋‹ฌ๋ฌด๋ฆฌ (Dal-muri)

๊ฐœ๋ฐœ์ž์˜ ์ผ์ผ ํ•™์Šต ๊ธฐ๋ก(TIL: Today I Learned)์„ ๊ด€๋ฆฌํ•˜๊ณ , AI๊ฐ€ ์›”๊ฐ„ ํšŒ๊ณ ๋ฅผ ์ƒ์„ฑํ•ด ์ฃผ๋Š” ์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ์ž…๋‹ˆ๋‹ค.

๐Ÿ“Œ ์ฃผ์š” ๊ธฐ๋Šฅ

  • TIL ์ž‘์„ฑ ๋ฐ ๊ด€๋ฆฌ: ๋งค์ผ ๋ฐฐ์šด ๋‚ด์šฉ์„ ๊ธฐ๋กํ•˜๊ณ  Room Database๋ฅผ ํ†ตํ•ด ๋กœ์ปฌ ํ™˜๊ฒฝ์—์„œ ์•ˆ์ „ํ•˜๊ฒŒ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
  • ํ•™์Šต ๋Œ€์‹œ๋ณด๋“œ (Chart): ์ฃผ๊ฐ„/์›”๊ฐ„ ํ•™์Šต ํ†ต๊ณ„๋ฅผ ์ฐจํŠธ๋กœ ์‹œ๊ฐํ™”ํ•˜์—ฌ ์ง๊ด€์ ์œผ๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • AI ์›”๊ฐ„ ํšŒ๊ณ  ์ƒ์„ฑ (Review): ์‚ฌ์šฉ์ž๊ฐ€ ๊ธฐ๋กํ•œ ํ•œ ๋‹ฌ ์น˜์˜ TIL ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ OpenAI API๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋งž์ถคํ˜• ์›”๊ฐ„ ํšŒ๊ณ  ํ”ผ๋“œ๋ฐฑ์„ ์ž๋™ ์ƒ์„ฑํ•ด ์ค๋‹ˆ๋‹ค.
  • ๋กœ๋”ฉ ํ”ผ๋“œ๋ฐฑ: AI ๋ถ„์„ ๋“ฑ ์ผ์ • ์‹œ๊ฐ„์ด ์†Œ์š”๋˜๋Š” ์ž‘์—… ์ง„ํ–‰ ์‹œ, Material 3์˜ ๋กœ๋”ฉ ์ธ๋””์ผ€์ดํ„ฐ ๊ธฐ๋ฐ˜์œผ๋กœ ํ”ผ๋“œ๋ฐฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ› ์•„ํ‚คํ…์ฒ˜ ๋ฐ ๋””์ž์ธ ํŒจํ„ด

  • Layered Clean Architecture: data (์ธํ”„๋ผ ๋ฐ ๋ ˆํฌ์ง€ํ† ๋ฆฌ ๊ตฌํ˜„ํ˜„), domain (๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง, ๋ชจ๋ธ ๋ฐ ์œ ์Šค์ผ€์ด์Šค ๊ตฌํ˜„), presentation (UI ๋ฐ ์ƒํƒœ ๊ด€๋ฆฌ) ๊ณ„์ธต์˜ ๋ช…ํ™•ํ•œ ์—ญํ•  ๋ถ„๋ฆฌ
  • MVI (Model-View-Intent): Orbit MVI ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ํ†ตํ•ด ๋‹จ๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ๊ฐ•์ œํ•˜๊ณ  ๋ทฐ ์ƒํƒœ(State) ๋ฐ ์‚ฌ์ด๋“œ ์ดํŽ™ํŠธ(Side Effect) ์ฒ˜๋ฆฌ๋ฅผ ์ฒด๊ณ„์ ์œผ๋กœ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
  • ์˜์กด์„ฑ ์ฃผ์ž… (DI): Dagger Hilt๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ณด์ผ๋Ÿฌํ”Œ๋ ˆ์ดํŠธ ์—†๋Š” ์˜์กด์„ฑ ์ฃผ์ž…์„ ๊ตฌํ˜„ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๐Ÿ›  ์ฃผ์š” ๊ธฐ์ˆ  ์Šคํƒ (Tech Stack)

Language & Toolkit

  • Kotlin (Target JVM 17)
  • Android SDK 35 (Min SDK 26)
  • Android Gradle Plugin (AGP) 8.7.3 (ktlint ์ •์  ๋ถ„์„ ํ˜ธํ™˜์„ฑ์„ ์œ„ํ•œ ๊ณ ์ • ๋ฒ„์ „)

UI & Architecture

  • Jetpack Compose & Material 3
  • Navigation Compose
  • Orbit MVI (Core, ViewModel, Compose ์•ก์Šคํ…์…˜)
  • Hilt (Dependency Injection)
  • Vico Compose (Compose ์ฐจํŠธ ๊ทธ๋ฆฌ๊ธฐ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ)

Data & Network Async

  • Coroutines & Flow
  • Room Database (Local Storage)
  • Retrofit2 & OkHttp3 (Network API Calls)
  • Kotlinx Serialization (JSON Serialization)