Inflearn brand logo image
Inflearn brand logo image
์ฑ„๋„ํ†ก ์•„์ด์ฝ˜

๋…ธ๋ž˜ ๋“ค์œผ๋ฉฐ ์‹ค์ „ ํ”„๋กœ์ ํŠธ๋กœ ์•ˆ๋“œ๋กœ์ด๋“œ ์ตœ์‹  ๊ธฐ์ˆ ์„ ๊ณต๋ถ€ํ•ด ๋ณด์ž! - ์ด๋ฆ„ ๊ถํ•ฉ ํŽธ

๋…ธ๋ž˜๋ฅผ ๋“ค์œผ๋ฉด์„œ, Clean Architecture๋ฅผ ์ง€ํ–ฅํ•˜๊ณ  MVVM ๋””์ž์ธ ํŒจํ„ด์„ ์ด์šฉํ•œ ์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ์„ ์ œ์ž‘ํ•ด๋ด์š”!

Thumbnail

์ค‘๊ธ‰์ž๋ฅผ ์œ„ํ•ด ์ค€๋น„ํ•œ
[๋ชจ๋ฐ”์ผ ์•ฑ ๊ฐœ๋ฐœ] ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.

์ด๋Ÿฐ ๊ฑธ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์–ด์š”

  • MVVM ๋””์ž์ธ ํŒจํ„ด์„ ์ด์šฉํ•œ ์•ฑ ์ œ์ž‘

  • Clean Architecture ์ง€ํ–ฅํ•œ ๊ตฌ์กฐ์˜ ์•ฑ ์ œ์ž‘

  • Dagger Hilt๋ฅผ ์ด์šฉํ•œ ์˜์กด์„ฑ ์ฃผ์ž…

  • Retrofit + Okhttp๋ฅผ ์ด์šฉํ•œ API ํ˜ธ์ถœ

  • Coroutine์„ ์ด์šฉํ•œ ์•ฑ ์ œ์ž‘

  • Kotlin์„ 100% ์ด์šฉํ•œ ์•ฑ ์ œ์ž‘

  • DataBinding์„ ์ด์šฉํ•œ ์•ฑ ์ œ์ž‘

๋ณธ ๊ฐ•์˜๋Š” ์†Œ๋ฆฌ์—†์ด ์ž๋ง‰์œผ๋กœ๋งŒ ์ด๋ฃจ์–ด์ง„ ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.
๊ตฌ๋งค ์ „ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์˜์ƒ์„ ๊ผญ ํ™•์ธํ•ด์ฃผ์„ธ์š”!

Firebase๋ฅผ ์ด์šฉํ•˜์—ฌ
์•ฑ์—์„œ ์„œ๋ฒ„์™€ ํ†ต์‹ ํ•˜๋Š” ๋ฒ•์„ ๋ฐฐ์›Œ์š” โœ

์กฐ๊ธˆ ๋” ๊นŠ๊ฒŒ, ์ตœ์‹  ๊ธฐ์ˆ ์„ ๊ณต๋ถ€ํ•˜๊ณ  ์‹ถ๋‹ค..

๊ฐ๊ฐ์˜ ๊ฐœ๋…๋ณด๋‹ค๋Š” ํ”„๋กœ์ ํŠธ ์ œ์ž‘์ด ์ค‘์‹ฌ์ ์ธ ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.
Clean Architecture๋ฅผ ์ง€ํ–ฅํ•œ MVVM ๋””์ž์ธ ํŒจํ„ด์„ ์‚ฌ์šฉํ•œ ์ด๋ฆ„ ๊ถํ•ฉ ์•ฑ์—์„œ ์„œ๋ฒ„์™€ ํ†ต์‹ ํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ Firebase๋ฅผ ์ด์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ฐ•์˜์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๊ธฐ์ˆ ๋“ค์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค.

  • Kotlin
  • MVVM
  • Clean Architecture
  • Dagger Hilt
  • Retrofit + Okhttp
  • Coroutine
  • Kotlin DSL
  • Firebase Realtime Database
  • Navigation Component
  • Databinding


์ด๋Ÿฐ ๋ถ„๋“ค๊ป˜ ์ด ๊ฐ•์˜๋ฅผ ์ถ”์ฒœํ•ด๋“œ๋ ค์š” ๐Ÿ”‘

์ด ๊ฐ•์˜๋งŒ์˜ ํŠน์ง•์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค โœจ

์ฝ”๋”ฉ๊ณผ ์Œ์•…์€ ๋ฐ€์ ‘ํ•œ ๊ด€๊ณ„๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฑฐ ์•Œ๊ณ  ๊ณ„์‹œ๋‚˜์š”?
๊ฐœ๋…์„ ๋ฐฐ์šฐ๊ณ  ๋‚œ ํ›„์—, ์ง์ ‘ ์จ๋ด์•ผ ๋ชจ๋ฅด๋Š” ๋ถ€๋ถ„์— ๋Œ€ํ•ด ์•Œ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฐฐ์šด ๊ธฐ์ˆ ์„ ํ†ตํ•ด ํ•„์ˆ˜์ ์œผ๋กœ ํ† ์ด ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค์–ด๋ด์•ผํ•ฉ๋‹ˆ๋‹ค.

  • ์ตœ์‹  ํŠธ๋ Œ๋“œ์— ๋งž์ถ˜ ๊ธฐ์ˆ ๋“ค์„ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ฆ„ ๊ถํ•ฉ ์•ฑ์„ ๋งŒ๋“ค์–ด๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ฐœ๋…์€ ์ตํ˜”์ง€๋งŒ ์–ด๋–ป๊ฒŒ ์•ฑ์„ ๋งŒ๋“ค์–ด์•ผ ํ• ์ง€ ๊ฐ์ด ์•ˆ ์˜ค์‹œ๋Š” ๋ถ„๋“ค์—๊ฒŒ ๊ฐ์„ ์žก๊ฒŒ ํ•ด๋“œ๋ฆฝ๋‹ˆ๋‹ค.
  • ํŽธํ•˜๊ฒŒ ์Œ์•…์„ ๋“ค์œผ๋ฉฐ ์ž๋ง‰์„ ํ†ตํ•ด ๊ฐ•์˜๋ฅผ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


ํ•จ๊ป˜ ๋งŒ๋“ค ์ด๋ฆ„ ๊ถํ•ฉ ์•ฑ์ด์—์š”! ๐Ÿ“ฑ

1. ์•ฑ ํ™•์ธ

์ฒ˜์Œ Splash ํ™”๋ฉด์—์„œ ์•ฑ ๋ฒ„์ „ (Real Time Data Base)์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

 

2. API ํ˜ธ์ถœ

์ด๋ฆ„ ๊ถํ•ฉ (Retrofit2, Okhttp)์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. 

 

3. ๊ถํ•ฉ ํ™•์ธ

100% ๊ถํ•ฉ ํ˜„ํ™ฉ๊ณผ ๊ถํ•ฉ ์ „์  (Real Time Data Base, Fire Store)์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

 


์˜ˆ์ƒ ์งˆ๋ฌธ Q&A ๐Ÿ’ฌ

Q. ์ฒ˜์Œ ์•ˆ๋“œ๋กœ์ด๋“œ๋ฅผ ์‹œ์ž‘ํ•˜๋Š”๋ฐ ์ด ๊ฐ•์˜๋กœ ์‹œ์ž‘ํ•ด๋„ ๋ ๊นŒ์š”?

๊ฐ€๋Šฅํ•˜์ง€๋งŒ, ๊ฐ•์˜ ๋‚ด์šฉ์„ ๋”ฐ๋ผ์˜ค์‹œ๋Š”๋ฐ ๊ธฐ๋ณธ ์ง€์‹์ด ์žˆ์œผ์…”์•ผ ๋” ์‰ฝ๊ณ  ์œ ์ตํ•  ๊ฑฐ๋ผ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

Q. ์œ„์—์„œ ์„ค๋ช…ํ•œ ๋ชจ๋“  ๊ธฐ์ˆ ๋“ค์˜ ๊ฐœ๋…์„ ๊นŠ๊ฒŒ ์•Œ๋ ค์ฃผ์‹œ๋‚˜์š”?

๊ธฐ๋ณธ์ ์œผ๋กœ ์„ค๋ช…์€ ํ•˜์ง€๋งŒ, ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“œ๋Š” ๊ณผ์ •์„ ๋‹ค๋ฃฌ๋‹ค๋Š” ํฐ ํ‹€์„ ์ค‘์ ์— ๋‘๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊นŠ์€ ๊ฐœ๋… ์„ค๋ช…์„ ์›ํ•˜์‹ ๋‹ค๋ฉด ์ƒ๊ฐ๊ณผ๋Š” ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ํ†ตํ•ด ๊ฐ•์˜๋ฅผ ํ™•์ธํ•ด์ฃผ์„ธ์š”!

Q. ์ดˆ๋ณด์ž๋Š” ์•„๋‹Œ๋ฐ ๊ทธ๋ž˜๋„ ์–ด๋ ค์šธ๊นŒ์š”?

์ถฉ๋ถ„ํžˆ ๋”ฐ๋ผ์˜ค์‹ค ์ˆ˜ ์žˆ์„ ์ •๋„๋กœ ์„ค๋ช…ํ•ด๋“œ๋ฆฌ๋ ค๊ณ  ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ ์–ด๋ ค์šด ๋ถ€๋ถ„์€ ์งˆ๋ฌธ์œผ๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š”!


์ง€์‹๊ณต์œ ์ž ์†Œ๊ฐœ โœ’๏ธ

์•ˆ์†์šฐํ™”

์ด๋Ÿฐ ๋ถ„๋“ค๊ป˜
์ถ”์ฒœ๋“œ๋ ค์š”!

ํ•™์Šต ๋Œ€์ƒ์€
๋ˆ„๊ตฌ์ผ๊นŒ์š”?

  • Kotlin์— ๋Œ€ํ•œ ๊ธฐ์ดˆ๊ฐ€ ์žˆ์œผ์‹  ๋ถ„

  • Android ๊ฐœ๋ฐœ์— ๋Œ€ํ•œ ๊ธฐ์ดˆ๊ฐ€ ์žˆ์œผ์‹  ๋ถ„

์„ ์ˆ˜ ์ง€์‹,
ํ•„์š”ํ• ๊นŒ์š”?

  • Kotlin ๊ธฐ์ดˆ

  • Android ๊ธฐ์ดˆ

์•ˆ๋…•ํ•˜์„ธ์š”
์•ˆ์†์šฐํ™”์ž…๋‹ˆ๋‹ค.

117

๋ช…

์ˆ˜๊ฐ•์ƒ

6

๊ฐœ

์ˆ˜๊ฐ•ํ‰

5

๊ฐœ

๋‹ต๋ณ€

3.8

์ 

๊ฐ•์˜ ํ‰์ 

1

๊ฐœ

๊ฐ•์˜

์•ˆ๋…•ํ•˜์„ธ์š”

๋‹ค์–‘ํ•œ ๊ฐ•์˜ ํ™œ๋™์„ ์œ„ํ•ด ์ค€๋น„ ์ค‘์ž…๋‹ˆ๋‹ค!

์ €์˜ ํ™œ๋™์ด ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์ข‹์€ ์˜ํ–ฅ์„ ๋ฏธ์ณค์œผ๋ฉด ํ•˜๋Š” ๋ฐ”๋žŒ์ด ์žˆ์Šต๋‹ˆ๋‹ค :)

์ปค๋ฆฌํ˜๋Ÿผ

์ „์ฒด

15๊ฐœ โˆ™ (3์‹œ๊ฐ„ 48๋ถ„)

๊ฐ•์˜ ๊ฒŒ์‹œ์ผ: 
๋งˆ์ง€๋ง‰ ์—…๋ฐ์ดํŠธ์ผ: 

์ˆ˜๊ฐ•ํ‰

์•„์ง ์ถฉ๋ถ„ํ•œ ํ‰๊ฐ€๋ฅผ ๋ฐ›์ง€ ๋ชปํ•œ ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.
๋ชจ๋‘์—๊ฒŒ ๋„์›€์ด ๋˜๋Š” ์ˆ˜๊ฐ•ํ‰์˜ ์ฃผ์ธ๊ณต์ด ๋˜์–ด์ฃผ์„ธ์š”!