์ฑ„๋„ํ†ก ์•„์ด์ฝ˜

Flutter๋กœ SNS ์•ฑ ๋งŒ๋“ค๊ธฐ

Flutter์˜ Provider / StateNotifier ์ƒํƒœ ๊ด€๋ฆฌ์™€ Firebase๋ฅผ ํ™œ์šฉํ•ด์„œ SNS ์•ฑ์„ ์ œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

(5.0) ์ˆ˜๊ฐ•ํ‰ 10๊ฐœ

์ˆ˜๊ฐ•์ƒ 111๋ช…

๋‚œ์ด๋„ ์ดˆ๊ธ‰

์ˆ˜๊ฐ•๊ธฐํ•œ ๋ฌด์ œํ•œ

์‹ค์Šต ์ค‘์‹ฌ
์‹ค์Šต ์ค‘์‹ฌ
ํ”Œ๋Ÿฌํ„ฐ
ํ”Œ๋Ÿฌํ„ฐ
๊ตฌ๊ธ€
๊ตฌ๊ธ€
์‹ค์Šต ์ค‘์‹ฌ
์‹ค์Šต ์ค‘์‹ฌ
ํ”Œ๋Ÿฌํ„ฐ
ํ”Œ๋Ÿฌํ„ฐ
๊ตฌ๊ธ€
๊ตฌ๊ธ€

๋จผ์ € ๊ฒฝํ—˜ํ•œ ์ˆ˜๊ฐ•์ƒ๋“ค์˜ ํ›„๊ธฐ

๋จผ์ € ๊ฒฝํ—˜ํ•œ ์ˆ˜๊ฐ•์ƒ๋“ค์˜ ํ›„๊ธฐ

5.0

5.0

koyk0408

100% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

ํ”Œ๋Ÿฌํ„ฐ๋ž‘ ํŒŒ์ด์–ด๋ฒ ์ด์Šค ๊ฐ™์ด ํ•˜๋Š” ๊ฐ•์˜ ์ฐพ๋‹ค๊ฐ€ ๊ตฌ๋งคํ•˜๊ฒŒ ๋˜์—ˆ์–ด์š”. ํ”„๋กœ๋ฐ”์ด๋”๋ฅผ ์ฒ˜์Œ ์ ‘ํ•ด์„œ ์ฒ˜์Œ์— ์ข€ ์–ด๋ ค์› ๊ณ , ํ”„๋กœ๋ฐ”์ด๋” ๊ธฐ๋ณธ๋งŒ ์ข€ ๊ณต๋ถ€ํ•˜๊ณ  ๋งˆ์ € ํ›„๋‹ค๋‹ฅ ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. n๋ฒˆ ๋“ค์œผ๋ ค๊ณ ... ๊ทผ๋ฐ ํ”„๋กœ๋ฐ”์ด๋”๋ฅผ ๋” ๊ณต๋ถ€ํ•ด์•ผ ์™„์ „ํžˆ ์ดํ•ด๊ฐ€ ๋  ๊ฒƒ ๊ฐ™๋„ค์š”..ใ…œใ…œ ์ผ๋‹จ ์Œ์งˆ์ด ๋ช…ํ™•ํ•˜๊ณ  ์ผ์ •ํ•ด์„œ ์ข‹์•„์š”. ๊ธ€์”จ๋„ ๊น”๋”ํ•˜๊ฒŒ ์ž˜ ๋ณด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ฝ”๋“œ ์ž‘์„ฑํ•˜๋ฉด์„œ ์™œ ์ด๋ ‡๊ฒŒ ํ•˜๋Š”์ง€ ์ด์œ ๋ฅผ ๋ง์”€ํ•ด์ฃผ์‹œ๋Š” ๊ฒŒ ์ข‹์•˜์–ด์š”. ์ฝ”๋“œ๋ฅผ ๊ฐœ์„ ํ•ด๋‚˜๊ฐ€๋Š” ๋ฐฉ์‹๋„ ์ข‹์•˜๊ตฌ์š”. ๊ธฐ๋ณธ์ ์ธ CRUD ๋™์ž‘์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์–ด์„œ ์ธ์Šคํƒ€ ํด๋ก  ๊ฐ•์˜์ง€๋งŒ ์–ด๋–ค ์•ฑ์„ ๋งŒ๋“ค์–ด๋„ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™์•„์š”. ์ „๋ฐ˜์ ์œผ๋กœ ๊น”๋”ํ•˜๊ณ  ๊ผผ๊ผผํ•˜๋ฉฐ ๋ช…๋ฃŒํ•œ ๊ฐ•์˜์˜€์Šต๋‹ˆ๋‹ค!

5.0

gimseongcheol33

81% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

์ง„์งœ ๋„์›€์ด ๋งŽ์ด ๋˜๋Š” ๊ฐ•์˜์ž…๋‹ˆ๋‹ค. ํ”Œ๋Ÿฌํ„ฐ๋ฅผ ์“ฐ๊ณ  ์‹ถ๋‹ค๋ฉด ๊ผญ ๋“ค์œผ๋ฉด ์ข‹์Šต๋‹ˆ๋‹ค.

5.0

hd.recssh

5% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

์ž˜๋“ฃ๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๊ฐ•์˜๋ฅผ๋“ฃ๊ณ  ์ €๋งŒ์˜ ์•ฑ์„ ๋งŒ๋“ค์ˆ˜์žˆ์–ด์„œ ์ฐฝ์—…ํ–ˆ์œผ๋ฉด ํ•˜๋Š” ๋ฐ”๋ž˜์œผ๋กœ ๊ณต๋ถ€ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์ˆ˜๊ฐ• ํ›„ ์ด๋Ÿฐ๊ฑธ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”

  • Provider / StateNotifier๋ฅผ ํ™œ์šฉํ•œ ์ƒํƒœ๊ด€๋ฆฌ

  • Firebase Auth๋ฅผ ํ™œ์šฉํ•œ ํšŒ์›๊ฐ€์ž… / ์ด๋ฉ”์ผ ์ธ์ฆ / ๋กœ๊ทธ์ธ / ๋กœ๊ทธ์•„์›ƒ

  • Firestore์˜ Transation / Batch

  • Firestorage๋ฅผ ํ™œ์šฉํ•œ ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ / ์กฐํšŒ / ์‚ญ์ œ

  • Flutter Animation

  • Pagination

  • Debounce

  • ์•ฑ ์‹คํ–‰ ์•„์ด์ฝ˜ ๋ณ€๊ฒฝ

๋น„์Šท๋น„์Šทํ•œ ํˆฌ๋‘ ์•ฑ ๋Œ€์‹  ๋ฉ‹์ง„ SNS๋ฅผ! 
๋งŒ๋“ค๋ฉฐ ๋ฐฐ์šฐ๋Š” ํ”Œ๋Ÿฌํ„ฐ ์ƒํƒœ๊ด€๋ฆฌ 

๋‚ด ์†์œผ๋กœ ๋งŒ๋“œ๋Š” ์ธโ˜…๊ทธ๋žจ
๋ชจ๋ฐ”์ผ ์•ฑ ๊ฐœ๋ฐœ๊ณ„์˜ ๋Œ€์„ธ, Flutter!

์‹ค๋ฌด์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ํ•™์Šตํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ฐ•์˜๋ฅผ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. ์œ ์‚ฌ ์ธ์Šคํƒ€๊ทธ๋žจ SNS ์•ฑ์„ ๋งŒ๋“ค๋ฉฐ ๊ผญ ํ•„์š”ํ•œ ํ”Œ๋Ÿฌํ„ฐ ๊ด€๋ จ ๊ธฐ๋Šฅ์„ ํ•™์Šตํ•ด ๋ณด์„ธ์š”!

Flutter ๊ธฐ์ดˆ + Provider ์ƒํƒœ ๊ด€๋ฆฌ

์œ ์‚ฌ ์ธ์Šคํƒ€๊ทธ๋žจ SNS ์•ฑ์„ ๋งŒ๋“ค์–ด๊ฐ€๋ฉด์„œ Provider(StateNotifier) ์ƒํƒœ๊ด€๋ฆฌ๋ฅผ ์ตํžˆ๊ณ , Flutter Animation์— ๋Œ€ํ•ด ๊ฐ„๋‹จํžˆ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.

SNS ์•ฑ์„ ๋งŒ๋“ค๊ณ  ์‹ถ์œผ์‹  ๋ถ„, ๊ตฌ์กฐ์™€ ์ƒํƒœ ๊ด€๋ฆฌ์— ๋Œ€ํ•ด ๊ถ๊ธˆํ•˜์…จ๋˜ ๋ถ„๋“ค, To-Do App ์ด์ƒ์˜ ๋ณต์žกํ•œ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๊ณ  ์‹ถ์€ ๋ถ„๋“ค๊ป˜ ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹ค.

Firebase ์ฃผ์š” ์„œ๋น„์Šค ์ด์ •๋ฆฌ

Firebase ์—ฐ๋™, Firebase Authentication์„ ํ™œ์šฉํ•œ ํšŒ์›๊ฐ€์ž… ๋ฐ ์ด๋ฉ”์ผ ์ธ์ฆ ๋กœ๊ทธ์ธ, Firestore ๋ฐ์ดํ„ฐ ์กฐํšŒ/์ €์žฅ/์ˆ˜์ •/์‚ญ์ œ/ํŽ˜์ด์ง€๋„ค์ด์…˜ ๋ฐ Transation/Batch, Cloud Store์— ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ €์žฅ/์‚ญ์ œํ•˜๋Š” ๋ฐฉ๋ฒ• ๋“ฑ Firebase์˜ ์ฃผ์š” ์„œ๋น„์Šค์— ๋Œ€ํ•ด ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.


๋ฐฐ์šฐ๋Š” ๋‚ด์šฉ์„ 
ํ™•์ธํ•ด๋ณด์„ธ์š”.

  • โœ… ์‹ค๋ฌด์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ์ˆ , ์ง€์‹์„ ํ•™์Šตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • โœ… ๊ธฐ๋ณธ์ ์ธ ํŒจํ„ด, ํ‹€์„ ๊ตฌ์„ฑํ•œ ์ƒํƒœ์—์„œ ๊ฐ์ข… ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๊ฐ•์˜๋ฅผ ์ง„ํ–‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ›„๋ฐ˜์œผ๋กœ ๊ฐˆ์ˆ˜๋ก ๊ฐ•์˜๋ฅผ ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์›Œ์ง‘๋‹ˆ๋‹ค.

1. ํ”„๋กœ์ ํŠธ ํ™˜๊ฒฝ ์„ค์ •

  • Flutter ํ”„๋กœ์ ํŠธ์™€ Firebase ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์—ฐ๋™ํ•ฉ๋‹ˆ๋‹ค.
  • Firebase ์„œ๋น„์Šค๋ฅผ ๋“ฑ๋กํ•˜๊ณ  rule์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

2. ํšŒ์›๊ฐ€์ž… ํ™”๋ฉด

  • ์Šค๋งˆํŠธํฐ ๊ฐค๋Ÿฌ๋ฆฌ์—์„œ ํ”„๋กœํ•„ ์‚ฌ์ง„์„ ์„ ํƒํ•˜๊ณ  ํ™”๋ฉด์— ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
  • ๊ฐ ํ•„์ˆ˜์ž…๋ ฅ ํ•ญ๋ชฉ์— ๊ฒ€์ฆ ๋กœ์ง์„ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • Firebase Authentication, Firestore, Cloud Storage์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
  • ์ž…๋ ฅํ•œ ์ด๋ฉ”์ผ์— ์ธ์ฆ ๋งํฌ๊ฐ€ ์ž‘์„ฑ๋œ ์ด๋ฉ”์ผ์„ ์ „์†กํ•˜๊ณ  ๋ฉ”์‹œ์ง€๋ฅผ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

3. ๋กœ๊ทธ์ธ ํ™”๋ฉด

  • ๊ฐ ํ•„์ˆ˜ ์ž…๋ ฅ ํ•ญ๋ชฉ์— ๊ฒ€์ฆ ๋กœ์ง์„ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • ์ด๋ฉ”์ผ ์ธ์ฆ์ด ์™„๋ฃŒ๋œ ์‚ฌ์šฉ์ž์— ๋Œ€ํ•ด์„œ๋งŒ ๋กœ๊ทธ์ธ ์ธ์ฆ ์ƒํƒœ๋ฅผ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

4. AuthStatus ์ƒํƒœ์— ๋”ฐ๋ฅธ ํ™”๋ฉด ์ด๋™

  • Firebase Authentication ์ธ์ฆ ์ƒํƒœ์— ๋”ฐ๋ผ AuthStatus ์˜ ์ƒํƒœ๊ฐ’์„ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.
  • AuthStatus ์ƒํƒœ๊ฐ’์ด ๋ฏธ์ธ์ฆ์ผ ๊ฒฝ์šฐ, ๋กœ๊ทธ์ธ ํ™”๋ฉด์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

5. ๋ฉ”์ธ ํ™”๋ฉด

  • TabBarVIew ์œ„์ ฏ์„ ์‚ฌ์šฉํ•ด์„œ ํŽ˜์ด์ง€ ์ด๋™์‹œ, ์• ๋‹ˆ๋ฉ”์ด์…˜ ํšจ๊ณผ๋ฅผ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • BottomNavigatorBar ์œ„์ ฏ์„ ์‚ฌ์šฉํ•ด์„œ ํ•˜๋‹จ ๋ฒ„ํŠผ์œผ๋กœ ํŽ˜์ด์ง€๋ฅผ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

6. ๊ฒŒ์‹œ๊ธ€ ๋“ฑ๋ก ํ™”๋ฉด

  • ๊ฐค๋Ÿฌ๋ฆฌ์—์„œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์‚ฌ์ง„์„ ์„ ํƒํ•˜๊ณ  ์„ ํƒํ•œ ์‚ฌ์ง„์„ ์Šฌ๋ผ์ด๋“œ๋กœ ํ™•์ธ ํ•ฉ๋‹ˆ๋‹ค.
  • ๊ฒŒ์‹œ๊ธ€ ๋‚ด์šฉ์„ ์ž…๋ ฅํ•˜๊ณ  ๋ถˆํ•„์š”ํ•œ ์‚ฌ์ง„์€ ์‚ญ์ œ ํ›„, ๋“ฑ๋กํ•˜๋ฉด ํ™”๋ฉด ์ด๋™๊ณผ ๋™์‹œ์— ๋“ฑ๋ก ์™„๋ฃŒ ๋ฉ”์‹œ์ง€๋ฅผ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

7. ๊ฒŒ์‹œ๊ธ€ ๋ชฉ๋ก ํ™”๋ฉด

  • ๋“ฑ๋กํ•œ ๊ฒŒ์‹œ๊ธ€ ๋ชฉ๋ก์„ ํ™”๋ฉด์— ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
  • ์—ฌ๋Ÿฌ ์žฅ์˜ ๊ฒŒ์‹œ๊ธ€ ์‚ฌ์ง„์„ ์Šฌ๋ผ์ด๋“œ๋กœ ํ™•์ธํ•˜๊ณ  ํ™•๋Œ€/์ถ•์†Œํ•ฉ๋‹ˆ๋‹ค.
  • ์ตœ์ƒ๋‹จ์—์„œ ํ™”๋ฉด์„ ์•„๋ž˜๋กœ ๋‚ด๋ ค์„œ ๊ฒŒ์‹œ๊ธ€ ๋ชฉ๋ก์„ ์ƒˆ๋กœ๊ณ ์นจํ•ฉ๋‹ˆ๋‹ค.

8. ํ”„๋กœํ•„ ํ™”๋ฉด

  • ํ˜„์žฌ ์ ‘์† ์ค‘์ธ ์‚ฌ์šฉ์ž ๋˜๋Š” ํ”„๋กœํ•„ ์‚ฌ์ง„์„ ํ„ฐ์น˜ํ•˜์—ฌ ํŠน์ • ์‚ฌ์šฉ์ž์˜ ์ •๋ณด๋ฅผ ํ™”๋ฉด์— ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๊ฐ€ ์ž‘์„ฑํ•œ ๊ฒŒ์‹œ๋ฌผ ์ˆ˜, following, follower, ๊ฒŒ์‹œ๋ฌผ ๋ชฉ๋ก์„ ํ™”๋ฉด์— ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
  • Folllow, Unfollow ๊ธฐ๋Šฅ์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

9. ๊ฒŒ์‹œ๋ฌผ ํ™”๋ฉด

  • ๊ฒŒ์‹œ๋ฌผ์— ์ข‹์•„์š” ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๊ณ  ์ข‹์•„์š” ์ˆ˜๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
  • ์ข‹์•„์š” ๊ธฐ๋Šฅ์— ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.

10. ์ข‹์•„์š” ๋ชฉ๋ก ํ™”๋ฉด

  • ์ ‘์† ์ค‘์ธ ์‚ฌ์šฉ์ž๊ฐ€ ์ข‹์•„์š”๋ฅผ ๋ˆ„๋ฅธ ๊ฒŒ์‹œ๋ฌผ์˜ ๋ชฉ๋ก์„ ํ™”๋ฉด์— ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

11. ๋Œ“๊ธ€ ํ™”๋ฉด

  • ๊ฒŒ์‹œ๊ธ€์— ๋Œ“๊ธ€์„ ๋“ฑ๋กํ•˜๊ณ  ์ถœ๋ ฅํ•˜๋Š” ํ™”๋ฉด์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

12. ๊ฒŒ์‹œ๊ธ€ ์‚ญ์ œ ๊ธฐ๋Šฅ

  • ์‚ฌ์šฉ์ž๊ฐ€ ์ž‘์„ฑํ•œ ๊ฒŒ์‹œ๊ธ€์„ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.
  • ์‚ญ์ œํ•œ ๊ฒŒ์‹œ๊ธ€๊ณผ ๊ด€๋ จ๋œ ์ด๋ฏธ์ง€ ํŒŒ์ผ, ๊ฒŒ์‹œ๊ธ€ ๋‚ด์šฉ, ๋Œ“๊ธ€ ๋“ฑ์˜ ๋ฐ์ดํ„ฐ๋ฅผ firebase ์„œ๋น„์Šค์—์„œ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.

13. ์‚ฌ์šฉ์ž ๊ฒ€์ƒ‰ ํ™”๋ฉด

  • ์ด๋ฆ„์œผ๋กœ ์‚ฌ์šฉ์ž๋ฅผ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค.
  • ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ์—์„œ ํ”„๋กœํ•„ ํ™”๋ฉด์œผ๋กœ ์ด๋™ํ•˜์—ฌ ํŠน์ • ์‚ฌ์šฉ์ž์˜ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ์ž ๊ฒ€์ƒ‰ ๋กœ์ง์— Debounce๋ฅผ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.

14. ํŽ˜์ด์ง• ๊ธฐ๋Šฅ

  • ๊ฒŒ์‹œ๊ธ€ ๋ชฉ๋ก ํ™”๋ฉด, ์ข‹์•„์š” ๋ชฉ๋ก ํ™”๋ฉด, ํ”„๋กœํ•„ ํ™”๋ฉด์— ํŽ˜์ด์ง• ๊ธฐ๋Šฅ์„ ์ ์šฉํ•ด์„œ ์ง€์ •๋œ ์ˆ˜ ๋งŒํผ ๊ฒŒ์‹œ๊ธ€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

15. ์•ฑ ์‹คํ–‰ ์•„์ด์ฝ˜ ๋ณ€๊ฒฝ

  • ์•ฑ ์‹คํ–‰ ์•„์ด์ฝ˜๊ณผ Splash Screen์„ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ฐ•์˜๋ฅผ ๋งŒ๋“  ์‚ฌ๋žŒ, DEV MOO

  • (ํ˜„) ์›น/Flutter ์•ฑ ๊ฐœ๋ฐœ ํ”„๋ฆฌ๋žœ์„œ
  • (์ „) ์†Œํ”„ํŠธ์—”์ง€๋‹ˆ์–ด์†Œ์‚ฌ์ด์–ดํ‹ฐ SMART CLOUD IT MASTER ๊ณผ์ • ๊ฐ•์‚ฌ
  • (์ „) TOSHIBA ETC ์ œ์–ด ๋ชจ๋“ˆ ๊ฐœ๋ฐœ ์ฐธ์—ฌ (์ผ๋ณธ)
  • (์ „) SMBC ๊ณ ๊ฐ๊ด€๋ฆฌ ํ”Œ๋žซํผ ๊ฐœ๋ฐœ ์ฐธ์—ฌ (์ผ๋ณธ)
  • (์ „) ๋ฏธ์‹์˜์‹œ๋Œ€ ๋ฐฐ๋‹ฌ์•ฑ ๊ฐœ๋ฐœ ์ฐธ์—ฌ
  • ์œ ํŠœ๋ธŒ ์ฑ„๋„ ์šด์˜ ์ค‘ 

Q&A ๐Ÿ’ฌ

Q. ๊ฐ•์˜์— ์‚ฌ์šฉ๋œ Flutter ๋ฒ„์ „์„ ์•Œ๋ ค์ฃผ์„ธ์š”.

Flutter 3.13.7์„ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.

Q. ์ƒํƒœ๊ด€๋ฆฌ์— Provider๋ฅผ ์‚ฌ์šฉํ•œ ์ด์œ ๊ฐ€ ๋ฌด์—‡์ธ๊ฐ€์š”?

Flutter์—๋Š” Riverpod, Bloc, GetX ๋“ฑ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์ƒํƒœ ๊ด€๋ฆฌ ํŒจํ‚ค์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ์ค‘์—์„œ๋„ Provider๋Š” Google์—์„œ ํ™œ๋ฐœํ•˜๊ฒŒ ์ง€์›ํ•˜๊ณ  ์ถ”์ฒœํ•˜๋Š” ์ƒํƒœ ๊ด€๋ฆฌ ํŒจํ‚ค์ง€๋กœ ์ธํ„ฐ๋„ท ์ปค๋ฎค๋‹ˆํ‹ฐ ๋“ฑ์„ ํ†ตํ•ด์„œ ์›ํ•˜๋Š” ์ •๋ณด๋ฅผ ์‰ฝ๊ฒŒ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ Provider์—์„œ Rivderpod ๋“ฑ ๋‹ค๋ฅธ ์ƒํƒœ๊ด€๋ฆฌ ํŒจํ‚ค์ง€๋กœ์˜ ์ด์ „ ์ž‘์—…๋„ ๋น„๊ต์  ์–ด๋ ต์ง€ ์•Š์„ ๊ฒƒ์ด๋ผ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

Q. ๊ฐ•์˜ ๋‚ด์šฉ์ด iOS์—๋Š” ๋Œ€์‘ํ•˜์ง€ ์•Š๋‚˜์š”?

ํ˜„์žฌ ๊ฐ•์˜ ๋‚ด์šฉ์€ Android์—์„œ๋งŒ ๊ฒ€์ฆ๋œ ์ƒํƒœ์ž…๋‹ˆ๋‹ค. iOS ๋Œ€์‘์€ ์—…๋ฐ์ดํŠธ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

Q. ๊ฐ•์˜๋ฅผ ๋“ฃ๊ธฐ ์œ„ํ•œ ์‚ฌ์ „ ์ง€์‹์ด ํ•„์š”ํ•œ๊ฐ€์š”?

Flutter ๊ธฐ๋ณธ๊ณผ Provider ์ƒํƒœ๊ด€๋ฆฌ์— ๋Œ€ํ•œ ์‚ฌ์ „ ์ง€์‹์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ„๋‹จํ•œ Todo ์•ฑ์ด๋‚˜ ๋ฉ”๋ชจ์žฅ ์ •๋„๋ฅผ ๋งŒ๋“ค์–ด ๋ณด์…จ๋‹ค๋ฉด ๊ฐ•์˜๋ฅผ ์ถฉ๋ถ„ํžˆ ๋”ฐ๋ผ์˜ค์‹ค ์ˆ˜ ์žˆ์„ ๊ฒ๋‹ˆ๋‹ค.

Q. ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ œ๊ณตํ•˜์‹œ๋‚˜์š”?

์ˆ˜๊ฐ•์ƒ์—๊ฒŒ๋Š” Github์„ ํ†ตํ•ด ์†Œ์Šค์ฝ”๋“œ๋ฅผ ์ œ๊ณตํ•ด ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

๐Ÿ“ข ์ˆ˜๊ฐ• ์ „ ์ฐธ๊ณ ์‚ฌํ•ญ ์•ˆ๋‚ด

  • ์‹ค์Šต ํ™˜๊ฒฝ์œผ๋กœ๋Š” Windows 10, Android Studio๋ฅผ ์š”๊ตฌํ•ฉ๋‹ˆ๋‹ค.
  • Flutter ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์ด ๊ตฌ์ถ•๋˜์–ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. (๊ฐ•์˜์—์„œ๋Š” 3.13.7 ๋ฒ„์ „์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.)
  • ์ˆ˜๊ฐ•์ƒ์—๊ฒŒ๋Š” ์ตœ์ข… ์†Œ์Šค ์ฝ”๋“œ์™€ ์‹ค์Šต ์ž๋ฃŒ(์ด๋ฏธ์ง€ ํŒŒ์ผ ๋“ฑ)๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ํ•™์Šต์— ํ•„์š”ํ•œ ์„ ์ˆ˜ ์ง€์‹์„ ํ™•์ธํ•ด์ฃผ์„ธ์š”. Flutter ๊ธฐ์ดˆ ์ง€์‹ ๋ฐ Provider ์ƒํƒœ ๊ด€๋ฆฌ ๊ธฐ์ดˆ ์ง€์‹์ด ํ•„์š”ํ•˜๋ฉฐ, Flutter๋ฅผ ์ด์šฉํ•ด To-do ์•ฑ ๋‚ด์ง€ ๊ฐ„๋‹จํ•œ ๋ฉ”๋ชจ์žฅ์„ ๋งŒ๋“  ๊ฒฝํ—˜์ด ์žˆ๋‹ค๋ฉด ์ถฉ๋ถ„ํžˆ ์ˆ˜๊ฐ•ํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ฐ•์˜ ๋‚ด์šฉ์€ Android์— ๋งž์ถฐ์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. (iOS ๋Œ€์‘์€ ์ถ”ํ›„ ์—…๋ฐ์ดํŠธ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.)
  • 2024๋…„ 11์›” 1์ผ ๋ถ€ํ„ฐ, Firebase ์˜ ๊ฐ์ข… ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์„œ๋น„์Šค ์‚ฌ์šฉ๋Ÿ‰์— ๋”ฐ๋ผ ์š”๊ธˆ์ด ์ฑ…์ •๋˜๋Š” Blaze ์š”๊ธˆ์ œ๋ฅผ ์ด์šฉํ•˜๋„๋ก ๋ณ€๊ฒฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Blaze ์š”๊ธˆ์ œ๋ฅผ ์ด์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์‹ ์šฉ์นด๋“œ ๋“ฑ๋ก์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋งŒ, ๋ฌด๋ฃŒ ์‚ฌ์šฉ๋Ÿ‰์„ ์ดˆ๊ณผํ•˜์ง€ ์•Š๋Š” ์ด์ƒ, ์š”๊ธˆ์ด ์ฒญ๊ตฌ๋˜์ง€ ์•Š์œผ๋ฉฐ ๊ฐ•์˜ ๋‚ด์šฉ์€ ๋ฌด๋ฃŒ ์‚ฌ์šฉ๋Ÿ‰ ๋‚ด์—์„œ ์ถฉ๋ถ„ํžˆ ์ž‘์—…์ด ๊ฐ€๋Šฅํ•  ๊ฒƒ์œผ๋กœ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ Firebase ์˜ ์š”๊ธˆ ์ •์ฑ…์„ ์ฐธ๊ณ ๋ฐ”๋ž๋‹ˆ๋‹ค.

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

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

  • SNS ์•ฑ์„ ๋งŒ๋“ค๊ณ  ์‹ถ์œผ์‹  ๋ถ„

  • Todo ์•ฑ ๋‹ค์Œ ๋‹จ๊ณ„๋กœ ๋„˜์–ด๊ฐ€๊ณ  ์‹ถ์€ ๋ถ„

  • Provider ์ƒํƒœ ๊ด€๋ฆฌ๋ฅผ ํ•™์Šตํ•˜๊ณ  ์‹ถ์€ ๋ถ„

  • ๊ฐ์ข… Firebase ์„œ๋น„์Šค๋ฅผ ๊ฒฝํ—˜ํ•˜๊ณ  ์‹ถ์€ ๋ถ„

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

  • Flutter๋กœ ๊ฐ„๋‹จํ•œ ์•ฑ์„ ๋งŒ๋“ค ์ •๋„์˜ ์Šคํ‚ฌ

  • Provider / StateNotifier ๊ธฐ์ดˆ ์ง€์‹

์•ˆ๋…•ํ•˜์„ธ์š”
DEV MOO์ž…๋‹ˆ๋‹ค.

223

๋ช…

์ˆ˜๊ฐ•์ƒ

17

๊ฐœ

์ˆ˜๊ฐ•ํ‰

101

๊ฐœ

๋‹ต๋ณ€

5.0

์ 

๊ฐ•์˜ ํ‰์ 

2

๊ฐœ

๊ฐ•์˜

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

ํ•œ๊ตญ, ์ผ๋ณธ์—์„œ ์›น ๊ฐœ๋ฐœ ๋ฐ ์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ ๊ฐœ๋ฐœ์ž๋กœ ํ™œ๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.
ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฐ•์‚ฌ๋กœ๋„ ํ™œ๋™ํ•˜๋ฉด์„œ ์ง€์‹์„ ์ „ํŒŒํ•˜์—ฌ ์‚ฌ๋žŒ์„ ๊ฐ€๋ฅด์นœ๋‹ค๋Š” ์ผ์—
์ฑ…์ž„๊ฐ์„ ๊ฐ–๊ณ  ํ•™์ƒ๋ถ„๋“ค์ด ์„ฑ์žฅํ•˜๋Š” ๋ชจ์Šต์— ๋ณด๋žŒ์„ ๋А๋ผ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

excusme@naver.com

๋”๋ณด๊ธฐ

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

์ „์ฒด

73๊ฐœ โˆ™ (13์‹œ๊ฐ„ 28๋ถ„)

ํ•ด๋‹น ๊ฐ•์˜์—์„œ ์ œ๊ณต:

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

์ˆ˜๊ฐ•ํ‰

์ „์ฒด

10๊ฐœ

5.0

10๊ฐœ์˜ ์ˆ˜๊ฐ•ํ‰

  • hd.recssh๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
    hd.recssh

    ์ˆ˜๊ฐ•ํ‰ 1

    โˆ™

    ํ‰๊ท  ํ‰์  5.0

    5

    5% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

    ์ž˜๋“ฃ๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๊ฐ•์˜๋ฅผ๋“ฃ๊ณ  ์ €๋งŒ์˜ ์•ฑ์„ ๋งŒ๋“ค์ˆ˜์žˆ์–ด์„œ ์ฐฝ์—…ํ–ˆ์œผ๋ฉด ํ•˜๋Š” ๋ฐ”๋ž˜์œผ๋กœ ๊ณต๋ถ€ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

    • ํˆฌ๋จผ์“ฐ๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
      ํˆฌ๋จผ์“ฐ

      ์ˆ˜๊ฐ•ํ‰ 10

      โˆ™

      ํ‰๊ท  ํ‰์  5.0

      5

      100% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

      ๋„ˆ๋ฌด ์œ ์ตํ•ฉ๋‹ˆ๋‹ค. ์ข‹์€ ๊ฐ•์˜ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค!

      • gimseongcheol33๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
        gimseongcheol33

        ์ˆ˜๊ฐ•ํ‰ 1

        โˆ™

        ํ‰๊ท  ํ‰์  5.0

        5

        81% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

        ์ง„์งœ ๋„์›€์ด ๋งŽ์ด ๋˜๋Š” ๊ฐ•์˜์ž…๋‹ˆ๋‹ค. ํ”Œ๋Ÿฌํ„ฐ๋ฅผ ์“ฐ๊ณ  ์‹ถ๋‹ค๋ฉด ๊ผญ ๋“ค์œผ๋ฉด ์ข‹์Šต๋‹ˆ๋‹ค.

        • koyk0408๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
          koyk0408

          ์ˆ˜๊ฐ•ํ‰ 1

          โˆ™

          ํ‰๊ท  ํ‰์  5.0

          5

          100% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

          ํ”Œ๋Ÿฌํ„ฐ๋ž‘ ํŒŒ์ด์–ด๋ฒ ์ด์Šค ๊ฐ™์ด ํ•˜๋Š” ๊ฐ•์˜ ์ฐพ๋‹ค๊ฐ€ ๊ตฌ๋งคํ•˜๊ฒŒ ๋˜์—ˆ์–ด์š”. ํ”„๋กœ๋ฐ”์ด๋”๋ฅผ ์ฒ˜์Œ ์ ‘ํ•ด์„œ ์ฒ˜์Œ์— ์ข€ ์–ด๋ ค์› ๊ณ , ํ”„๋กœ๋ฐ”์ด๋” ๊ธฐ๋ณธ๋งŒ ์ข€ ๊ณต๋ถ€ํ•˜๊ณ  ๋งˆ์ € ํ›„๋‹ค๋‹ฅ ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. n๋ฒˆ ๋“ค์œผ๋ ค๊ณ ... ๊ทผ๋ฐ ํ”„๋กœ๋ฐ”์ด๋”๋ฅผ ๋” ๊ณต๋ถ€ํ•ด์•ผ ์™„์ „ํžˆ ์ดํ•ด๊ฐ€ ๋  ๊ฒƒ ๊ฐ™๋„ค์š”..ใ…œใ…œ ์ผ๋‹จ ์Œ์งˆ์ด ๋ช…ํ™•ํ•˜๊ณ  ์ผ์ •ํ•ด์„œ ์ข‹์•„์š”. ๊ธ€์”จ๋„ ๊น”๋”ํ•˜๊ฒŒ ์ž˜ ๋ณด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ฝ”๋“œ ์ž‘์„ฑํ•˜๋ฉด์„œ ์™œ ์ด๋ ‡๊ฒŒ ํ•˜๋Š”์ง€ ์ด์œ ๋ฅผ ๋ง์”€ํ•ด์ฃผ์‹œ๋Š” ๊ฒŒ ์ข‹์•˜์–ด์š”. ์ฝ”๋“œ๋ฅผ ๊ฐœ์„ ํ•ด๋‚˜๊ฐ€๋Š” ๋ฐฉ์‹๋„ ์ข‹์•˜๊ตฌ์š”. ๊ธฐ๋ณธ์ ์ธ CRUD ๋™์ž‘์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์–ด์„œ ์ธ์Šคํƒ€ ํด๋ก  ๊ฐ•์˜์ง€๋งŒ ์–ด๋–ค ์•ฑ์„ ๋งŒ๋“ค์–ด๋„ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™์•„์š”. ์ „๋ฐ˜์ ์œผ๋กœ ๊น”๋”ํ•˜๊ณ  ๊ผผ๊ผผํ•˜๋ฉฐ ๋ช…๋ฃŒํ•œ ๊ฐ•์˜์˜€์Šต๋‹ˆ๋‹ค!

          • DEV MOO
            ์ง€์‹๊ณต์œ ์ž

            ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ์งˆ๋ฌธ ์žˆ์œผ์‹œ๋ฉด ์–ธ์ œ๋“ ์ง€ ๋‚จ๊ฒจ์ฃผ์„ธ์š”.

        • efforthye๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
          efforthye

          ์ˆ˜๊ฐ•ํ‰ 8

          โˆ™

          ํ‰๊ท  ํ‰์  4.9

          5

          8% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

          ๋น„์Šทํ•œ ๊ฐ•์˜

          ๊ฐ™์€ ๋ถ„์•ผ์˜ ๋‹ค๋ฅธ ๊ฐ•์˜๋ฅผ ๋งŒ๋‚˜๋ณด์„ธ์š”!

          ์›” โ‚ฉ280,484

          5๊ฐœ์›” ํ• ๋ถ€ ์‹œ

          โ‚ฉ66,000