2024_11_13_meeting_minute - boostcampwm-2024/and04-Nature-Album GitHub Wiki

์ผ์‹œ: 2024-11-13

์ฐธ์„์ž: ์ •์œ ์ง„, ์ž„ํ˜•์ค€, ๋…ธ์ง„ํ™˜, ๊น€๋„์œค, ๊น€์ •ํ˜ธ

๐Ÿ’ก ๋„คํŠธ์›Œํฌ & ๋กœ๊ทธ์ธ & ๋ฐ์ดํ„ฐ Flow

๋…ผ์˜ ๊ฐœ์š”

  • local , remote ์ƒํƒœ์™€ ๋น„ํšŒ์›, ์ต๋ช…, ๋กœ๊ทธ์ธ ์ƒํƒœ์—์„œ์˜ ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ์— ๋Œ€ํ•ด ๋…ผ์˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค.
  • ํ˜„์žฌ ๋กœ์ปฌ์ผ ๊ฒฝ์šฐ๋งŒ์„ ๊ณ ๋ คํ•˜์—ฌ ์Šคํ”„๋ฆฐํŠธ๋ฅผ ์ง„ํ–‰ํ–ˆ๋‹ค. ์ด๋ฒˆ ์ฃผ Firebase ๋„์ž… ๋ฐ ๋กœ๊ทธ์ธ ๋„์ž… ๋“ฑ์˜ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ ์‚ฌํ•ญ์œผ๋กœ ์ธํ•ด ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ์— ๋Œ€ํ•œ ๋…ผ์˜๊ฐ€ ํ•„์š”ํ•ด์กŒ๋‹ค.

๋„คํŠธ์›Œํฌ ์—†์„ ๋•Œ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•  ๊ฒƒ์ธ๊ฐ€? YES

์˜๊ฒฌ ๋…ผ์˜

  • ๋„๊ฐ ๋ณด๊ธฐ, ์นœ๊ตฌ ์ œ์™ธ (MVP ๊ธฐ์ค€)
  • ์ €์žฅ์€ ๋ฌด์กฐ๊ฑด ์˜จ๋ผ์ธ ์ƒํƒœ์—์„œ๋งŒ ๊ฐ€๋Šฅํ•˜๊ฒŒ room์ด๋ž‘ ์„œ๋ฒ„๋ž‘ ๋™๊ธฐํ™”
  • room์— ์ €์žฅํ•˜๊ณ  ์žˆ๋‹ค๊ฐ€ ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ ๋˜๋ฉด ๋™๊ธฐํ™” ํ•˜์—ฌ ์„œ๋ฒ„์™€ ๋™๊ธฐํ™”(์ตœ์‹  ๊ธฐ์ค€ ๋™๊ธฐํ™”)

๊ฒฐ๋ก 

  • room์— ์ €์žฅํ•˜๊ณ  ์žˆ๋‹ค๊ฐ€ ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ ๋˜๋ฉด ๋™๊ธฐํ™” ํ•˜์—ฌ ์„œ๋ฒ„์™€ ๋™๊ธฐํ™”(์ตœ์‹  ๊ธฐ์ค€ ๋™๊ธฐํ™”)

๋™๊ธฐํ™”

  • label, photo ๋“ฑ ์ตœ์‹  ๋ฐ์ดํ„ฐ ๊ธฐ์ค€์œผ๋กœ update
    • ๊ฐ ํ…Œ์ด๋ธ”์— ์‹œ๊ฐ„ ์ •๋ณด ์ถ”๊ฐ€ ํ•„์š”
  • NoSQL์˜ ๋ฐ์ดํ„ฐ <=> RDB ๋ฐ์ดํ„ฐ ์„œ๋กœ ์–‘๋ฐฉํ–ฅ์œผ๋กœ ์ „ํ™˜ ๊ฐ€๋Šฅํ•œ ๋กœ์ง ํ•„์š”

์ €์žฅ์†Œ ๊ธฐ์ค€

  • RoomDB๊ฐ€ ๋ฉ”์ธ
  • ์„œ๋ฒ„๋Š” ์„œ๋ธŒ๋กœ ๋ฐ์ดํ„ฐ ์—…๋กœ๋“œ๋Š” ์ถ”ํ›„ ๋‹ค๋ฅธ ๊ณ„์ • ๋กœ๊ทธ์ธ & ์นœ๊ตฌ ๊ธฐ๋Šฅ์„ ์œ„ํ•จ
    • ๋‹ค๋ฅธ ๊ณ„์ •์œผ๋กœ ๋กœ๊ทธ์ธ ํ•  ๋•Œ
      • Room DB ๊ธฐ์กด ๋ฐ์ดํ„ฐ ์‚ญ์ œ ํ›„ ์„œ๋ฒ„์˜ ๋ฐ์ดํ„ฐ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ

โ“์„œ๋ฒ„์˜ ์กด์žฌ ์ด์œ 

  • Room DB์™€ ์„œ๋ฒ„๊ฐ€ ๋ฐ์ดํ„ฐ๊ฐ€ ๋™์ผํ•œ๋ฐ ์„œ๋ฒ„์˜ ์กด์žฌ ์ด์œ ๋ฅผ ์„ค๋ช…ํ•œ๋‹ค๋ฉด?
    • ์šฐ๋ฆฌ ์•ฑ์€ ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ ์—†์ด & ๋น„ํšŒ์›์œผ๋กœ ๋„๊ฐ ๋“ฑ๋ก ๋ฐ ๋ณด๊ธฐ ๊ฐ€๋Šฅํ•œ ์•ฑ
    • ์นœ๊ตฌ ๊ธฐ๋Šฅ ์‚ฌ์šฉ์ด๋‚˜ ๊ธฐํƒ€ ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ด€๋ จ๋งŒ ๋„คํŠธ์›Œํฌ ์‚ฌ์šฉ
    • ์ฆ‰, ๋ฉ”์ธ ๊ธฐ๋Šฅ ์™ธ์˜ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ ์‚ฌ์šฉ์—๋งŒ ๋„คํŠธ์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ์ด๋•Œ ์นœ๊ตฌ์˜ ๋„๊ฐ์„ ๋ณด๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๋กœ๊ทธ์ธ ํ–ˆ์„ ๋•Œ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ์šฉ๋„๋กœ ์„œ๋ฒ„๊ฐ€ ์กด์žฌํ•œ๋‹ค.

โœ…๋…ผ์˜ ๊ฒฐ๋ก 

  • ์šฐ์ธก์˜ ํ˜„์žฌ ์ง„ํ–‰ํ•  ์‚ฌํ•ญ Flow๋กœ ์ง„ํ–‰
    • ๊ธฐ์กด RoomDB ์ƒํƒœ ๋ฉ”์ธ์œผ๋กœ ์œ ์ง€

image

โœ… ์šฐ๋ ค์‚ฌํ•ญ

  • ์ด๋ฏธ์ง€๋กœ ์ธํ•œ ์•ฑ ์‚ฌ์ด์ฆˆ

    • ์•ฑ ์šฉ๋Ÿ‰์ด ๋„ˆ๋ฌด ์ปค์ง€์ง€ ์•Š๋Š”๊ฐ€?
    • ์„œ๋ฒ„๊ฐ€ ์žˆ์Œ์—๋„ ๋กœ์ปฌ์— ๊ฐ™์ด ์ €์žฅํ•  ๊ฒฝ์šฐ ๋ถˆํ•„์š”ํ•˜๊ฒŒ ์•ฑ ์‚ฌ์ด์ฆˆ๊ฐ€ ์ปค์ง€์ง€ ์•Š์„๊นŒ?
  • ๋™๊ธฐํ™” ์‹œ ์ด๋ฏธ์ง€๊ฐ€ ํฌ๋ฉด ์˜ค๋žœ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆดํ…๋ฐ ์ด ๋•Œ ๋„๊ฐ์— ๋“ค์–ด๊ฐ€๋ฉด?

  • Room๊ณผ ์„œ๋ฒ„์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์ƒ์ดํ•œ ๊ฒฝ์šฐ ์–ด๋–ป๊ฒŒ ํ• ์ง€

    • (๋กœ๊ทธ์ธ ์ƒํƒœ) ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ์ด ๋Š๊ธด ๊ฒฝ์šฐ >> ์„œ๋ฒ„๋ฅผ Room์— ๋งž์ถ”๋ฉด ๋จ [Room >> Server]
    • (์ต๋ช… > ๊ธฐ์กด ์•„์ด๋””) ์„œ๋ฒ„์— ์žˆ๋Š” ๋‘ ๊ฐœ์˜ ๋ฐ์ดํ„ฐ ๋ณ‘ํ•ฉ ํ›„ Room์— ๋™๊ธฐํ™” [Server >> Room]
    • (๋กœ๊ทธ์•„์›ƒ ์˜คํ”„์ƒํƒœ > ๋กœ๊ทธ์ธ) Room ๋ฐ์ดํ„ฐ๋ฅผ ์„œ๋ฒ„๋กœ ์ „์†ก ํ›„ ์„œ๋ฒ„ ๋ฐ์ดํ„ฐ๋ฅผ Room์— ๋™๊ธฐํ™” [Room << >> ์„œ๋ฒ„]
  • ์„œ๋ฒ„ Uri๋ž‘ Room Uri๊ฐ€ ๋‹ค๋ฅผํ…๋ฐ ์ค‘๋ณต์„ z์–ด๋–ป๊ฒŒ ๊ตฌ๋ถ„ํ• ์ง€?

    • ์„œ๋ฒ„ Table id๋ž‘ room db id ๋‹ค๋ฆ„
    • ์ „ ๋‹ต์ด ์ƒ๊ฐ์ด ์•ˆ๋‚˜์š” >> ๋ฃธ ๋กœ๊ทธ์•„์›ƒ์ด๋‚˜ ๊ทธ๋Ÿด ๊ฒฝ์šฐ ID๊ฐ€ ๋‹ค ๋ฐ”๋€”ํ…๋ฐ
    • ๋ผ๋ฒจ์€ ๋ผ๋ฒจ๋ช…์œผ๋กœ ๊ตฌ๋ถ„ ๊ฐ€๋Šฅ (background๋Š” ์ตœ์‹  ๊ฐ’์œผ๋กœ)
    • ์‚ฌ์ง„์€ ์ถ”๊ฐ€ ๊ณ ๋ ค ํ•„์š” ์ƒ๊ฐํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค

์ถ”๊ฐ€ ์˜๊ฒฌ

  • ์•ฑ ๋ฐ์ดํ„ฐ ์ €์žฅ ๊ด€๋ จ
    • ๋ฐ์ดํ„ฐ ์ „์ฒด ์ง€์šฐ๊ธฐ
    • ์บ์‹œ๋งŒ ์ง€์šฐ๊ธฐ

๐Ÿ’ก ์ต๋ช… ๋กœ๊ทธ์ธ์ด ํ•„์š”ํ•œ๊ฐ€?

  • ๋‹ค์‹œ ๋“  ์ƒ๊ฐ์ด์ง€๋งŒ ์ต๋ช… ๋กœ๊ทธ์ธ์ด ํ•„์š”ํ•œ๊ฐ€?
    • ์ด์ 
      • ๋กœ๊ทธ์ธ ์ „ํ™˜ ์‹œ ๋™๊ธฐํ™”๋ฅผ ๋น ๋ฅด๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ๋‹จ์ 
      • ๊ธฐ์กด์˜ Room DB์— ์ €์žฅํ•˜๋Š” ๊ฒƒ์€ ์œ ์ง€๋œ ์ƒํƒœ์—์„œ ์ถ”๊ฐ€์ ์ธ ์„œ๋ฒ„ ์ „์†ก ์ž‘์—…์ด ๋“ค์–ด๊ฐ€ ๋ฆฌ์†Œ์Šค ์ฆ๊ฐ€
      • ์ต๋ช… ๋กœ๊ทธ์ธ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋กœ๊ทธ์•„์›ƒ๋„ ํ•  ์ˆ˜ ์žˆ์„ ํ…๋ฐ ๋งŒ์•ฝ ๋กœ๊ทธ์•„์›ƒ ํ›„ ๋‹ค์‹œ ๋น„ํšŒ์›์œผ๋กœ ๋กœ๊ทธ์ธํ•œ๋‹ค๊ณ  ๊ฐ€์ • ํ–ˆ์„ ๋•Œ ์ด์ „์˜ ์ต๋ช… UID๋กœ ์ ‘์†์ด ๊ฐ€๋Šฅํ•œ๊ฐ€?
      • ๋ญ๊ฐ€ ๋˜์—ˆ๋“  Room DB์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์„œ๋ฒ„๋กœ ๋™๊ธฐํ™” ์‹œ์ผœ์ค˜์•ผํ•˜๋Š”๋ฐ ์ต๋ช… ๋กœ๊ทธ์ธ์˜ ์ด์ ์ด ์‚ฌ๋ผ์ง€๋Š” ๊ฒƒ์ด ์•„๋‹Œ๊ฐ€?
      • ์˜คํžˆ๋ ค ์ผ์ด ๋” ๋งŽ์•„์ง„ ๋А๋‚Œ ๊ทธ์— ๋น„ํ•ด ์–ป๋Š” ์ด์ ์€ ๋ณ„๋กœ ์—†๋‹ค๋Š” ์ƒ๊ฐ
  • ์ฐฌ์„ฑํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ‘
    • ๊ธฐ์กด RoomDB๋ฅผ ์„œ๋ฒ„์— ๋™๊ธฐํ™” ์‹œํ‚ค๋Š” ๋กœ์ง์ด ํ˜„์žฌ ํ•„์ˆ˜์ ์œผ๋กœ ์ž๋ฆฌ ์žก์€ ์ƒํƒœ์—์„œ๋Š” ์ต๋ช… ๋กœ๊ทธ์ธ์„ ๋‘๊ณ  ์ดํ›„ ๋กœ๊ทธ์ธ ์ „ํ™˜ํ•˜๋Š” ๊ฒƒ์—์„œ์˜ ์ด์ ์ด ๋ณ„๋กœ ์ค‘์š”ํ•˜์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
    • ํ˜„์žฌ ๋ฉ”์ธ์„ RoomDB๋กœ ์žก์•˜๊ธฐ ๋•Œ๋ฌธ

๊ฒฐ๋ก 

  • ์ต๋ช… ๋กœ๊ทธ์ธ ์ œ๊ฑฐ

๐Ÿ’ก ์ง„ํ–‰

๋กœ๊ทธ์ธ : ํ˜•์ค€

  • ํ† ํฐ ๋ฐ›๋Š” ๊ฒƒ

Map : ์œ ์ง„, ์ง„ํ™˜

  • map, marker โ‡’ image custom ๋ง‰ํžˆ๋Š” ์ค‘

FireStore ๊ด€๋ จ ์ €์žฅ : ๋„์œค (๋™๊ธฐํ™”๋Š” ๋ชปํ•จ)

  • ์ง„ํ–‰ ์ค‘

๋ฆฌํŒฉํ† ๋ง: ์ •ํ˜ธ

  • ๋„๊ฐ ๋๋‚ด๊ณ  ํ™ˆ ํ™”๋ฉด ํšŒ์ „ ๋Œ€์‘ ์ค‘

๐Ÿ’ก ๋ฉ˜ํ† ๋ง ์ผ์ง€ ์ž‘์„ฑ

  • ์ง„ํ–‰์ƒํ™ฉ ๋ฐ ์งˆ๋ฌธ ์ž‘์„ฑ

  • ๊ธฐ์ˆ ์  ๋„์ „์œผ๋กœ ๋ฌด์—‡์„ ํ•ด์•ผ ํ•˜๋Š” ๊ฐ€?

    • ์ง€๊ธˆ ํ•˜๋Š” ๊ฒƒ์ด ๋‹ค ๊ธฐ์ˆ ์  ๋„์ „ ๊ฐ™์€ ๋А๋‚Œ
      • ๋กœ์ปฌ & ์„œ๋ฒ„ ๋™๊ธฐํ™”
      • ์ปดํฌ์ฆˆ ๋ทฐ ํ˜ผ์šฉ
      • animation ์ œ์ž‘ & composable ํ™œ์šฉ
      • AI, ์นœ๊ตฌ ๊ธฐ๋Šฅ์„ ๋ฏธ๋ฃจ๊ณ  ๋‹ค๋ฅธ ๊ฒƒ์„ ์‹œ๋„ํ•ด๋„ ์ข‹์„ ๊ฒƒ ๊ฐ™์Œ

๐Ÿ“• week3 ๋ฉ˜ํ† ๋ง ์ผ์ง€

โš ๏ธ **GitHub.com Fallback** โš ๏ธ