12.11 TIL

์•„๋ฆ„ยท2023๋…„ 12์›” 11์ผ
0

์•„์›ƒ์†Œ์‹ฑ ํ”„๋กœ์ ํŠธ

ํ”„๋กœ์ ํŠธ ๋ฐฐํฌ๋งํฌ

ํŠœํ„ฐ๋‹˜ ํ”ผ๋“œ๋ฐฑ

  • motitube ๋™๊ธฐ๋ถ€์—ฌ ์˜์ƒ ์ถ”์ฒœ ์•„์ด๋””์–ด๊ฐ€ ์ข‹์Œ.
  • confirm ์ฐฝ ๊ฐ™์€ ๊ฒฝ์šฐ toastify๋ณด๋‹ค๋Š” sweetalert2๋ฅผ ์“ฐ๋Š” ๊ฒƒ์ด ์ข‹์Œ. (toastify๋Š” ์ง€์›ํ•˜์ง€ ์•Š์„ ๊ฒƒ)
  • ํ™ˆํ™”๋ฉด ์ƒ๋‹จ์— ์บ๋Ÿฌ์…€ ์ ์šฉ์ด ์ข‹์•˜์Œ. ์กฐ๊ธˆ ๋” ๋‚˜์€ ๋ฐฉํ–ฅ์€ ๋ช‡ ์ดˆ ๋‹จ์œ„๋กœ ์ž๋™์œผ๋กœ ํ™”๋ฉด์ด ์Šฌ๋ผ์ด๋“œ ๋˜๋Š” ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๋ฉด ์ข‹์„ ๋“ฏํ•จ. ํ”„๋กœ๊ทธ๋žจ์ด ์‚ด์•„์žˆ๋‹ค๋Š” ๋Š๋‚Œ์„ ์ฃผ๋Š” ๊ฒƒ์ด UX์ ์œผ๋กœ ์ข€ ๋” ์‚ฌ์šฉ์ž๊ฐ€ ์ข‹์€ ๋Š๋‚Œ์„ ๋ฐ›์„ ๊ฒƒ.
  • ์˜์ƒ๋ณ„๋กœ ์นดํ…Œ๊ณ ๋ฆฌ๊ฐ€ ์ž˜ ์ ์šฉ๋˜์–ด ์žˆ์Œ. ๋‹ค๋งŒ ์นดํ…Œ๊ณ ๋ฆฌ๋ณ„๋กœ ํ•„ํ„ฐ๋ง ํƒญ ์ ์šฉํ•ด์ฃผ์—ˆ์œผ๋ฉด ์ข€ ๋” ์ข‹์•˜์„ ๊ฒƒ์ž„.
  • README ๊น”๋”, github๊ด€๋ฆฌ ์ „๋ฐ˜์ ์œผ๋กœ ๊น”๋”ํ•˜๊ฒŒ ๊ด€๋ฆฌ๋˜์—ˆ์Œ. (main, dev ๋ง๊ณ  feat ๋ธŒ๋žœ์น˜๋Š” ์ •๋ฆฌ์ฐจ์›์—์„œ ์‚ญ์ œํ•ด๋„ ๋ฌด๋ฐฉํ•จ => commit์ด dev์— ํ•ฉ์ณ์ ธ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— commit๋‹จ์œ„๋งŒ ์žˆ์œผ๋ฉด ๋˜๋ฏ€๋กœ), commit ์ปจ๋ฒค์…˜๋„ ๊ต‰์žฅํžˆ ๊น”๋”.
  • ๋ฆฌ์•กํŠธ ์ฟผ๋ฆฌ ์ž˜ ์ž‘์„ฑํ–ˆ๋Š”๋ฐ ๋ฒ„์ „3๋กœ ์ž‘์„ฑํ–ˆ์Œ. devtools๋Š” ์ตœ์‹ ๋ฒ„์ „์ž„. ๋ฆฌ์•กํŠธ์ฟผ๋ฆฌ๋„ ์ตœ์‹ ๋ฒ„์ „์œผ๋กœ ์„ค์น˜ํ•˜๋Š” ๊ฒƒ ๊ถŒ์žฅ. (์ง€๊ธˆ์€ ์ƒ๊ด€์—†์ง€๋งŒ ์ข€ ๋” ์‹ฌํ™”์ ์œผ๋กœ ๋“ค์–ด๊ฐ€์„œ ์ตœ์ ํ™”๊นŒ์ง€ ๊ณ ๋ คํ•œ๋‹ค๋ฉด ๋ฆฌ์•กํŠธ ๋ฒ„์ „3์€ ํ•œ๊ณ„์ ์ด ์žˆ์Œ)
  • custom hook ๊ตฟ.

KPT ํšŒ๊ณ 

Keep - ํ˜„์žฌ ๋งŒ์กฑํ•˜๊ณ  ์žˆ๋Š” ๋ถ€๋ถ„

  • Firebase ์ธ์ฆ ๋ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค : ๋ฐฑ์—”๋“œ ์—†์ด๋„ firebase๋กœ ์ธ์ฆ๊ณผ db๋ฅผ ์‚ฌ์šฉํ•ด ์ปค๋ฎค๋‹ˆํ‹ฐ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค
  • React Query๋ฅผ ํ†ตํ•œ API ์š”์ฒญ ๋ฐ ์‘๋‹ต ๊ด€๋ฆฌ : React query๋Š” redux thunk๋ณด๋‹ค ๊ฐ„๋‹จํ•˜๊ณ  ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋กœ๋”ฉํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ๋” ์‰ฌ์› ๋‹ค + ์‹ค์‹œ๊ฐ„ ์—…๋ฐ์ดํŠธ
  • Redux Toolkit ํ™œ์šฉ : Redux Toolkit์ด Redux๋ณด๋‹ค ๋” ์‰ฝ๊ฒŒ ์‚ฌ์šฉ
  • YouTube API : YouTube API๋ฅผ ์ด์šฉํ•˜์—ฌ ํ”„๋กœ์ ํŠธ ๋‚ด์—์„œ ์œ ํŠœ๋ธŒ ๋™์˜์ƒ์˜ ๋‚ด์šฉ์„ ๊ฐ€์ ธ์˜ค๊ณ  ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค

Problem - ๋ถˆํŽธํ•˜๊ฒŒ ๋Š๋ผ๋Š” ๋ถ€๋ถ„

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

Try - Problem์— ๋Œ€ํ•œ ํ•ด๊ฒฐ์ฑ…, ๋‹น์žฅ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ๊ฒƒ

  • ์›ํ™œํ•œ ์†Œํ†ต : ํ˜‘์—…์ด๋ผ๋Š” ํ”„๋กœ์ ํŠธ ์•ˆ์—์„œ ์†Œํ†ต์˜ ์ค‘์š”์„ฑ์„ ์ฒด๊ฐํ–ˆ๊ธฐ์— ๋งค์ผ ๋งค์ผ ์ •ํ•ด์ง„ ์‹œ๊ฐ„์— ํšŒ์˜๋ฅผ ๊ฐ€์ง€๋„๋ก ํ•  ๊ฒƒ์ž„.
  • React Query ํ™œ์šฉ : ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ๋ฅผ ์š”์ฒญํ•˜๋Š” ๋™์•ˆ ์ปดํฌ๋„ŒํŠธ์˜ ์ƒํƒœ๋ฅผ ๋งŒ๋“ค์ง€ ์•Š๊ณ  ๋ Œ๋”๋ง ๋ฐ ๋‹ค์–‘ํ•œ ํ™”๋ฉด ์ฒ˜๋ฆฌ
  • ์„ฑ๋Šฅ ์ตœ์ ํ™” : ๋Œ“๊ธ€์ด๋‚˜ ๋™์˜์ƒ์ด ๋งŽ์•„์งˆ ๊ฒฝ์šฐ๋ฅผ ๋Œ€๋น„ํ•ด ํŽ˜์ด์ง• ๋˜๋Š” ๋ฌดํ•œ ์Šคํฌ๋กค๋ง ๋„์ž…
  • DevTools์˜ ํ™œ์šฉ : DevTools๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ƒํƒœ ๋ฐ ์ฟผ๋ฆฌ ๋ณ€ํ™”๋ฅผ ์ถ”์ ํ•˜๊ณ  ๋””๋ฒ„๊น…ํ•  ๊ฒƒ! ๊ฐœ๋ฐœ ๋ฐ ์œ ์ง€ ๋ณด์ˆ˜ ๋‹จ๊ณ„์—์„œ ํฐ ๋„์›€!
profile
๋‚ด ๊ฟˆ์€ ๊ฐœ๋ฐœ์ž

0๊ฐœ์˜ ๋Œ“๊ธ€