yj-front

์ตœ์ข… ํ”„๋กœ์ ํŠธ - AFTERWORK | ํ‡ด๊ทผํ•˜๊ณ  ๋ญํ•˜์ง€? ๋ณธ๋ฌธ

ํ”„๋กœ์ ํŠธ

์ตœ์ข… ํ”„๋กœ์ ํŠธ - AFTERWORK | ํ‡ด๊ทผํ•˜๊ณ  ๋ญํ•˜์ง€?

noh-yj 2021. 5. 30. 14:03

๐Ÿ“š ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ

ํ‡ด๊ทผํ•˜๊ณ  ๋ญํ• ๊นŒ ๊ณ ๋ฏผํ•˜๋Š” ์ง์žฅ์ธ๋“ค์„ ์œ„ํ•ด ์—ฌ๋Ÿฌ ์ทจ๋ฏธ ํ”Œ๋žซํผ๋“ค์˜ ํด๋ž˜์Šค๋“ค์„ ํ•œ ๋ฒˆ์— ๋ชจ์•„ ๋น„๊ตํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

  • ์œ ๋ช… ํ”Œ๋žซํผ 7๊ฐœ์‚ฌ ํด๋ž˜์Šค ์ธ๊ธฐ, ๊ฐ€๊ฒฉ ํ•œ ๋ฒˆ์— ๋น„๊ต
  • ๊ตฌ๊ธ€/๋„ค์ด๋ฒ„/์นดํ†ก ์•„์ด๋””๋กœ ๊ฐ„ํŽธํ•˜๊ฒŒ ์†Œ์…œ ๋กœ๊ทธ์ธ
  • ์‚ฌ์šฉ์ž๋ณ„ ๊ด€์‹ฌ ์ง€์—ญ, ๋ถ„์•ผ ์„ค์ •์— ๋”ฐ๋ฅธ ๋‹ค์–‘ํ•œ ์ทจ๋ฏธ ์ถ”์ฒœ๊ธฐ๋Šฅ

๐Ÿ“Ž ํ™ˆํŽ˜์ด์ง€

๐Ÿ’ฌ Github

๐Ÿ›  Development

  • ๋ณธ ํ”„๋กœ์ ํŠธ์—์„œ ๋‹ด๋‹นํ•œ ๋ถ€๋ถ„์€ ๋ฉ”์ธ ํŽ˜์ด์ง€,๊ฒ€์ƒ‰ ํŽ˜์ด์ง€, ์นดํ…Œ๊ณ ๋ฆฌ ํŽ˜์ด์ง€๋ฅผ ๋‹ด๋‹นํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ฉ”์ธ ํŽ˜์ด์ง€

  • ๋น„ ๋กœ๊ทธ์ธ ์‹œ ๋กœ๊ทธ์ธ ํ›„ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์•ˆ๋‚ด ๋ฒ„ํŠผ์„ ํ†ตํ•ด ์œ ์ € ๋กœ๊ทธ์ธ ์œ ๋„
  • ๋กœ๊ทธ์ธ ํ›„ ํšŒ์›์ •๋ณด๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฒ„ํŠผ ์ด๋™์ด ๊ฐ€๋Šฅํ•œ ์•ˆ๋‚ด๋ฌธ๊ตฌ ์‚ฌ์šฉ
  • ํ•ด๋‹น ์œ ์ €๊ฐ€ ๊ด€์‹ฌ ๊ฐ–๋Š” ์ง€์—ญ ๋ฐ ์นดํ…Œ๊ณ ๋ฆฌ ์„ค์ • ์‹œ ๊ฐ๊ฐ ๋žœ๋คํ•˜๊ฒŒ 12๊ฐœ์˜ ํด๋ž˜์Šค๋ฅผ ์ถ”์ฒœํ•ด์ฃผ๋ฉฐ ๊ฐฑ์‹ ๋ฒ„ํŠผ์„ ํ†ตํ•ด ๋” ๋งŽ์€ ํด๋ž˜์Šค๋ฅผ ์ถ”์ฒœ๋ฐ›์„ ์ˆ˜ ์žˆ์Œ

๊ฒ€์ƒ‰ ํŽ˜์ด์ง€

  • ์œ ์ €๊ฐ€ ํŠน์ • ํด๋ž˜์Šค๋ฅผ ์กฐํšŒํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์œผ๋กœ ๊ฒ€์ƒ‰ํ‚ค์›Œ๋“œ์— ํ•ด๋‹นํ•˜๋Š” ํด๋ž˜์Šค๋ฅผ ์กฐํšŒํ•  ์ˆ˜ ์žˆ์Œ
  • ํ•ด๋‹น ํŽ˜์ด์ง€๋Š” ๋ฌดํ•œ์Šคํฌ๋กค ๋ฐฉ์‹์œผ๋กœ ๊ตฌํ˜„ํ–ˆ์œผ๋ฉฐ ํŽ˜์ด์ง• ์ •๋ณด๋Š” Redux๋ฅผ ์ด์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ๋ฅผ ์ง„ํ–‰ํ•จ
  • ๊ฒ€์ƒ‰ ํ‚ค์›Œ๋“œ๋Š” query-string ํŒจํ‚ค์ง€๋ฅผ ์ด์šฉํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ถœํ•ด์„œ ์„œ๋ฒ„์— ํŒŒ๋ผ๋ฏธํ„ฐ ๊ฐ’์œผ๋กœ ๋ณด๋ƒ„
  • ์ธ๊ธฐ ๋ฐ ๊ฐ€๊ฒฉ ์ •๋ ฌ, ์˜จ/์˜คํ”„๋ผ์ธ ํ•„ํ„ฐ, ์ง€์—ญ ๋ฐ ์‚ฌ์ดํŠธ ํ•„ํ„ฐ์˜ ๊ฐ’๋„ ์„œ๋ฒ„์— ํŒŒ๋ผ๋ฏธํ„ฐ ๊ฐ’์œผ๋กœ ๋ณด๋ƒ„

์นดํ…Œ๊ณ ๋ฆฌ ํŽ˜์ด์ง€

  • ์œ ๋ช… ํ”Œ๋žซํผ 7๊ฐœ์‚ฌ ํด๋ž˜์Šค๋ฅผ 6์ข…๋ฅ˜์˜ ์นดํ…Œ๊ณ ๋ฆฌ๋กœ ๋ถ„๋ฅ˜ํ•จ
  • ์ธ๊ธฐ ๋ฐ ๊ฐ€๊ฒฉ ์ •๋ ฌ, ์˜จ/์˜คํ”„๋ผ์ธ ํ•„ํ„ฐ, ์ง€์—ญ ๋ฐ ์‚ฌ์ดํŠธ ํ•„ํ„ฐ์˜ ๊ฐ’์„ ์„œ๋ฒ„์— ํŒŒ๋ผ๋ฏธํ„ฐ ๊ฐ’์œผ๋กœ ๋ณด๋ƒ„
  • ๋ฌดํ•œ์Šคํฌ๋กค ๋ฐฉ์‹์œผ๋กœ ๊ฒŒ์‹œ๋ฌผ ์กฐํšŒ๋ฅผ ๊ตฌํ˜„ํ–ˆ์œผ๋ฉฐ ํŽ˜์ด์ง• ์ •๋ณด๋Š” Redux๋ฅผ ์ด์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ๋ฅผ ์ง„ํ–‰ํ•จ

Front-end Tech Stack

  • React
  • JavaScript
  • Redux
  • Redux-Thunk

๐Ÿค— ์‹œ์—ฐ ์˜์ƒ

https://www.youtube.com/watch?v=pW9s6w0tXzg

๐Ÿ›ซ Result

  • ํŽ˜์ด์Šค๋ถ, ์ธ์Šคํƒ€ ๊ด‘๊ณ ๋ฅผ ํ†ตํ•ด ํ™๋ณด๋ฅผ ์ง„ํ–‰ํ–ˆ์œผ๋ฉฐ ์œ ์ €์œ ์ž…์€ 1,399๋ช…์˜ ์‚ฌ์šฉ์ž๋ฅผ ์–ป์—ˆ๊ณ , ์œ ์ €ํ”ผ๋“œ๋ฐฑ์€ 133๊ฑด์˜ ํ”ผ๋“œ๋ฐฑ์„ ์ˆ˜์ง‘ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
  • ์ˆ˜์ง‘ํ•œ ํ”ผ๋“œ๋ฐฑ ๋‚ด์šฉ์„ ๋ฐ”ํƒ•์œผ๋กœ ๋ถ€์กฑํ•œ ๋ถ€๋ถ„์„ ๊ฐœ์„ ํ•˜๋Š” ์ž‘์—…์„ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ์‹ค์ œ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค์–ด ๋Ÿฐ์นญ์„ ํ•ด๋ณด๊ณ , ๊ด‘๊ณ ๋ฅผ ํ†ตํ•ด ๊ณ ๊ฐ์„ ๋ชจ์•„๋ณด๊ณ  ๋””์ž์ด๋„ˆ์™€ ํ˜‘์—…ํ•ด๋ณธ ๊ฒฝํ—˜, ์‹ค์ œ ๊ณ ๊ฐ์˜ ์˜๊ฒฌ์„ ๋ฐ”ํƒ•์œผ๋กœ ์„œ๋น„์Šค๋ฅผ ๊ฐœ์„ ํ•ด๋ณธ ๊ฒฝํ—˜์„ ์ด๋ฒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ํ†ตํ•ด ์–ป์—ˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ˜Ž ํ›„๊ธฐ

5์ฃผ๊ฐ„ ์ง„ํ–‰ํ–ˆ๋˜ ํ”„๋กœ์ ํŠธ๊ฐ€ ๋“œ๋””์–ด ๋งˆ๋ฌด๋ฆฌ๊ฐ€ ๋˜์—ˆ๋‹ค. ์ด๋ฒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋ฉด์„œ ๋””์ž์ด๋„ˆ๋ถ„๊ณผ ์ฒ˜์Œ์œผ๋กœ ํ˜‘์—…์„ ํ•ด๋ดค๊ณ  ์„œ๋น„์Šค ๋Ÿฐ์นญ ์ดํ›„ ์œ ์ €๋“ค์˜ ๋ชฉ์†Œ๋ฆฌ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์„œ๋น„์Šค๋ฅผ ๊ฐœ์„ ํ•ด๋‚˜๊ฐ”๋‹ค. ์ด ๋ถ€๋ถ„์— ์žˆ์–ด ์„œ๋น„์Šค ๊ฐœ์„ ์€ ์ •๋‹ต์ด ์—†๋‹ค๋Š”๊ฑธ ํฌ๊ฒŒ ๋Š๋ผ๊ฒŒ ๋˜์—ˆ๊ณ  ์œ ์ €๋งˆ๋‹ค ์ƒ๊ฐ์ด ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๊ณตํ†ต์ง€์ ์„ ์ฐพ๋Š”๋‹ค๋Š”๊ฑด ํŒ€์›๋“ค ๋‚ด์—์„œ ์˜์‚ฌ๊ฒฐ์ •์„ ํ•ด์•ผํ•œ๋‹ค๋Š”๊ฑธ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

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

ํ•ญํ•ด๋ฅผ ์ˆ˜๋ฃŒํ•˜๊ณ ๋‚œ ํ›„์—๋„ ๋‹ค์–‘ํ•œ ํŒ€ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•ด๋‚˜๊ฐˆ ์˜ˆ์ •์ด๋‹ค.