Coder Social home page Coder Social logo

seung-hee-hong-97 / react-fastcampus-velopert Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 0.0 3.23 MB

๐Ÿ“•ํŒจ์ŠคํŠธ ์บ ํผ์Šค ์˜จ๋ผ์ธ ๊ฐ•์˜๋กœ React ๋ฌดํ•œํšŒ๋…ํ•˜๊ธฐ

JavaScript 70.62% TypeScript 12.74% CSS 4.65% HTML 10.98% SCSS 1.01%

react-fastcampus-velopert's Introduction

ํŒจ์ŠคํŠธ์บ ํผ์Šค ์˜จ๋ผ์ธ ๊ฐ•์˜ - ์˜ฌ์ธ์› ํŒจํ‚ค์ง€ React ํ•™์Šต

๊ธˆ์ชฝ ๊ฐ™์€ velopert ๊ฐ•์˜

โœ” ๊ฐ•์˜ ์„ ํƒ ๋™๊ธฐ

๊ฐœ์ธ์ ์œผ๋กœ๋Š” React๊ฐ•์˜๋ฅผ ๋ฐฐ์šฐ๋ฉด์„œ ๊น€๋ฏผ์ค€ ๊ฐ•์‚ฌ๋‹˜์˜ ๊ฐ•์˜๊ฐ€ ๋„ˆ๋ฌด ์„ค๋ช…์ด ์ข‹์•„์„œ ๋“ค์—ˆ๋˜ ์ ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํšŒ์‚ฌ์—์„œ๋Š” ์—…๋ฌด ํŠน์„ฑ์ƒ React๊ฐ€ ์•„๋‹Œ Vue.js๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ Vue.js๋ฅผ ๋ฐฐ์šธ ๋•Œ๋„ ๊น€๋ฏผ์ค€ ๊ฐ•์‚ฌ๋‹˜์˜ ๊ฐ•์˜๊ฐ€ ์‰ฝ๊ฒŒ ์ฝํž ๊ฒƒ ๊ฐ™์•„์„œ ๋ธ”๋กœ๊ทธ์—์„œ Vue.js ๊ฐ•์ขŒ๋ฅผ ์ฝ๊ณ  ์žˆ์—ˆ๋Š”๋ฐ ๊ฐ•์ขŒ์˜ ๋‹ค์Œ ๊ธ€์ด ๋งˆ์นจ ์œ„์˜ ๋งํฌ์— ๋‹ฌ๋ฆฐ ๊ธ€์ด์—ˆ์Šต๋‹ˆ๋‹ค. ์šฐ์—ฐํžˆ ์ฝ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ์ €๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฐ๋ช…์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค. ์ฒซ์งธ๋กœ๋Š” ์ •๋ง ํ”„๋กœ๋‹ต๊ฒŒ ๋ชจ๋“  ๊ฒƒ์„ ์ „๋ฌธ์ ์œผ๋กœ ๊ฐ€๋ฅด์น˜์‹œ๋Š” ๋ถ„๊ป˜๋„ ์ด๋Ÿฌํ•œ ๊ณ ๋ฏผ์ด ์žˆ์œผ์…จ๋‹ค๋Š” ์ . ๋‘˜์งธ๋กœ๋Š” ์ด ๊ธ€์ฒ˜๋Ÿผ ํ•œ ๋ถ„์•ผ(React)์—์„œ 200%์˜ ์—ญ๋Ÿ‰์„ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ฉ‹์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๊ณ  ๊ทธ๋ ‡๊ฒŒ ๋˜๊ณ ์‹ถ๋‹ค๋Š” ๊ธ€์ฒ˜๋Ÿผ ๋‹น์‹ ๊ป˜์„œ ๊ฟˆ์„ ์ด๋ฃจ์…จ๋‹ค๋Š” ์ . ์ฐธ๊ณ ๋กœ ํŒจ์ŠคํŠธ์บ ํผ์Šค์— ์˜ฌ๋ผ์˜จ ๊ฐ•์˜๋Š” 2019๋…„์ด์—ˆ๊ณ  2018๋…„์—๋„ ๊น€๋ฏผ์ค€ ๊ฐ•์‚ฌ๋‹˜์˜ ๊ฐ•์˜๋ฅผ ๊ฐ๋ช…๊นŠ๊ฒŒ ๋ดค๋˜ ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ด์ „ ์‹œ์ ์— ์ด๋ ‡๊ฒŒ ๋˜๊ฒ ๋‹ค๋Š” ํฌ๋ถ€๋ฅผ ๋ฐํžˆ์‹œ๊ณ  ์ •๋ง ๋ชฉํ‘œ๋ฅผ ์„ฑ์ทจํ•˜์…จ๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์•˜์„ ๋•Œ ์ €๋Š” ๋„ˆ๋ฌด ๋†€๋ผ์› ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์ € ๋˜ํ•œ ๊ผญ ๋ฆฌ์•กํŠธ๋ฅผ ๋‹ค์‹œ ํ•™์Šตํ•˜๋Š” ๊ฒƒ๋งŒ์ด ์•„๋‹ˆ๋ผ ๊น€๋ฏผ์ค€ ๊ฐ•์‚ฌ๋‹˜์˜ ์ข‹์€ ๊ฐ•์˜๋ฅผ ์ˆ˜๊ฐ•ํ•˜๋ฉด์„œ ๋ฌดํ•œํ•œ ์—ญ๋Ÿ‰์„ ํ’ˆ์€ ๊ฐœ๋ฐœ์ž๋กœ์„œ ์„ฑ์žฅํ•˜๊ธฐ๋ฅผ ํฌ๋งํ•ฉ๋‹ˆ๋‹ค. ์ œ๊ฐ€ Vue.js๋ฅผ ํšŒ์‚ฌ์—์„œ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ํ•˜๋”๋ผ๋„ React๋ฅผ ๋†“์„ ์ˆ˜ ์—†๋Š” ์ด์œ ๊ฐ€ ๋ฐ”๋กœ ์ด๊ฒƒ์ž…๋‹ˆ๋‹ค. ์•ž์œผ๋กœ ์ œ๊ฐ€ ์–ด๋–ค ํ”„๋ŸฐํŠธ์—”๋“œ ๊ธฐ์ˆ ์„ ๋” ์ „๋ฌธ์ ์œผ๋กœ ์ตํžˆ๊ฒŒ ๋ ์ง€๋Š” ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ, ์ง€๊ธˆ์˜ ์œ„์น˜์—์„œ๋Š” React์™€ Vue ๋ชจ๋‘ ์ตœ์„ ์„ ๋‹คํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ํ˜น์‹œ ์•„๋‚˜์š”? React๋ฅผ ๊ฐ‘์ž๊ธฐ ํšŒ์‚ฌ์—์„œ ์“ฐ๋ผ๊ณ  ํ•˜๊ฒŒ๋ ์ง€ ๋ฏธ๋ž˜๋Š” ์•„๋ฌด๋„ ๋ชจ๋ฅด๋Š” ๊ฑฐ๋‹ˆ๊นŒ์š”!

๐Ÿˆ ํ† ์ด ํ”„๋กœ์ ํŠธ๋ฅผ ํ•˜์ง€ ์•Š๊ณ  ๊ธฐ๋ณธ ๊ฐœ๋…์—๋งŒ ์ง‘์ค‘ํ•˜๋Š” ์ด์œ ?

Vue.js๋Š” jQuery๋ฅผ ์“ฐ๋Š” ๊ฒƒ์—์„œ ์•ฝ๊ฐ„ ์ง„๋ณดํ•œ SPA์•ฑ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค๋Š” ๋Š๋‚Œ์ด๋ผ๋ฉด, React๋Š” ์™„์ „ ๊ทธ ์ด์ƒ์˜ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. React๋Š” CSS์กฐ์ฐจ๋„ styled-component๋ฅผ ์ด์šฉํ•˜์—ฌ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋‹จ์—์„œ CSS๋ฅผ ์ •์˜ํ•˜๋Š” ๊ฒƒ์ด ๋Œ€์„ธ๊ฐ€ ๋˜์—ˆ์œผ๋‹ˆ๊นŒ์š”. ๊ทธ๋ฆฌ๊ณ  React hook์œผ๋กœ ์ƒํƒœ๊ด€๋ฆฌ๋ฅผ ํ•  ๋•Œ์—๋„ ES6๋ฌธ๋ฒ•์ธ ๋ฐฐ์—ด ๋””์ŠคํŠธ๋Ÿญ์ฒ˜๋ง์„ ์ด์šฉํ•ฉ๋‹ˆ๋‹ค. ์ง€๊ธˆ ์ €๋Š” React๊ฐ€ Vue๋ณด๋‹ค ์šฐ์›”ํ•˜๋‹ค๊ณ  ๋ง์”€๋“œ๋ฆฌ๋Š” ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค. ๊ทธ๋งŒํผ React๊ฐ€ ๋” ๋งŽ์ด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์— ๋น„์ค‘์„ ๋” ๋งŽ์ด ๋‘๋Š” ์ชฝ์œผ๋กœ ๊ฐ€๊ณ  ์žˆ๊ธฐ์— React๋ฅผ ๊ณต๋ถ€ํ•˜๋ ค๋ฉด Vue๋ณด๋‹ค ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์— ์‹ ๊ฒฝ์„ ๋” ๋งŽ์ด ์จ์•ผ ํ•œ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค.

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

โŒ› ํ•™์Šต ์˜๋„

  1. ํ”„๋ŸฐํŠธ์—”๋“œ์˜ ๋‹ค์–‘ํ•œ ํ”„๋ ˆ์ž„์›Œํฌ&๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ตํžˆ๋ฉด์„œ IT์˜ ๊ฒฌ๋ฌธ์„ ๋„“ํžˆ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

  2. ๋‹คํ–‰ํžˆ ๋ฆฌ์•กํŠธ๋Š” ์ด๋ฏธ ์ ‘ํ–ˆ๋˜ ๋ถ€๋ถ„์ด๋ผ ํ•˜๋ฃจ ์ผ๊ณผ ํ›„ ์ฒด๋ ฅ์ด ๋ชจ์ž๋ผ๋Š” ๋‚  ๊ฐ€๋ณ๊ฒŒ ๊ณต๋ถ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  3. ์ด๋ฏธ ๋ฆฌ์•กํŠธ ๊ฐ•์˜๋Š” Redux๋ถ€๋ถ„๊นŒ์ง€ ์ˆ˜๊ฐ•ํ–ˆ๋˜ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ „๋ถ€ ๋“ค์—ˆ๋‹ค๊ณ  ํ•˜๋”๋ผ๋„ ๋ชจ๋‘ ๋‚ด ๊ฒƒ์ด ๋œ ๊ฒƒ์ด ์•„๋‹ˆ๊ณ  ์ด๋ฏธ Vue.js๋ฅผ ๊ณต๋ถ€ํ•˜๋ฉด์„œ ๋ง๊ฐ๋˜์–ด ๊ฐ€๊ณ  ์žˆ๋Š” ํ•™์Šต ๊ณก์„ ์„ ๋˜์‚ด๋ฆฌ๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.

    ๐Ÿ‘Ÿ ๊ฐœ์ธ์ ์œผ๋กœ ๋ฆฌ์•กํŠธ๋ฅผ ๋” ๐Ÿ˜ํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๐Ÿ“• ์˜จ๋ผ์ธ ๊ต์žฌ

๐Ÿ“‹ ๋ชฉ์ฐจ

  1. 1ํšŒ๋…: ์™„๋ฃŒ (2020. 10. 12. ~ 2021. 1. 9.)
  2. 2ํšŒ๋…: ์™„๋ฃŒ (2021. 3. 3. ~ 2021. 3. 27.)
    • 1ํšŒ๋…์—์„œ ๋ถ€์กฑํ•œ ๋ถ€๋ถ„ ์œ„์ฃผ๋กœ ์ˆ˜๊ฐ•
  3. 3ํšŒ๋…: ์‹œ์ž‘ (2021. 6. 12. ~ (โœ’ ํ˜„์žฌ))
    • ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ์‹ค์Šตํ•˜๊ณ  ๋„˜์–ด๊ฐ€๊ธฐ
      • ์ด์ œ Hello world ์ถœ๋ ฅ ์ˆ˜์ค€์˜ ์˜ˆ์ œ๋Š” ๊ตณ์ด ๋ณด๋ฉด์„œ ๋”ฐ๋ผ ์น  ํ•„์š”๊ฐ€ ์—†๋‹ค๊ณ  ํŒ๋‹จ.
      • ๋Œ€์‹  ์ข€ ๋” ์–ด๋ ค์šด ๋‚ด์šฉ์— ์ง‘์ค‘ํ•˜์ž
    • useState๋Š” ์•„๋‹ˆ๊นŒ useReducer์— ์ข€ ๋” ์ง‘์ค‘ํ•ด ๋ณด๊ธฐ
    • react-router-dom์€ ๊ฐ•์˜๋„์›€ ์—†์ด๋„ ์„œ๋ธŒ๋ผ์šฐํŒ…๊นŒ์ง€ ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ฒƒ์ด ๋ชฉํ‘œ!
    • ์ƒํƒœ๊ด€๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๊ด€ํ•ด ์กฐ๊ธˆ ๋” ์ง‘์ค‘ํ•˜์ž

โ–ถ ๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ

  • ๐Ÿ“Œ 1์žฅ. ๋ฒจ๋กœํผํŠธ์™€ ํ•จ๊ป˜ ํ•˜๋Š” ๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ: Javascript ์ž…๋ฌธ
  • ๐Ÿ“Œ 2์žฅ. ๋ฒจ๋กœํผํŠธ์™€ ํ•จ๊ป˜ ํ•˜๋Š” ๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ: ์•Œ๊ณ  ์žˆ์œผ๋ฉด ์œ ์šฉํ•œ JS ๋ฌธ๋ฒ•
  • ๐Ÿ“Œ 3์žฅ. ๋ฒจ๋กœํผํŠธ์™€ ํ•จ๊ป˜ ํ•˜๋Š” ๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ: ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ ๋‹ค๋ฃจ๊ธฐ

โ–ถ ๋ชจ๋˜ ๋ฆฌ์•กํŠธ

  • ๐Ÿ“Œ 1์žฅ. ๋ฒจ๋กœํผํŠธ์™€ ํ•จ๊ป˜ ํ•˜๋Š” ๋ชจ๋˜ ๋ฆฌ์•กํŠธ: ๋ฆฌ์•กํŠธ ์ž…๋ฌธ
  • ๐Ÿ“Œ 2์žฅ. ๋ฒจ๋กœํผํŠธ์™€ ํ•จ๊ป˜ ํ•˜๋Š” ๋ชจ๋˜ ๋ฆฌ์•กํŠธ: ์ปดํฌ๋„ŒํŠธ ์Šคํƒ€์ผ๋ง
  • ๐Ÿ“Œ 3์žฅ. ๋ฒจ๋กœํผํŠธ์™€ ํ•จ๊ป˜ ํ•˜๋Š” ๋ชจ๋˜ ๋ฆฌ์•กํŠธ: ๋ฉ‹์ง„ ํˆฌ๋‘๋ฆฌ์ŠคํŠธ ๋งŒ๋“ค๊ธฐ
  • ๐Ÿ“Œ 4์žฅ. ๋ฒจ๋กœํผํŠธ์™€ ํ•จ๊ป˜ ํ•˜๋Š” ๋ชจ๋˜ ๋ฆฌ์•กํŠธ: API ์—ฐ๋™
  • ๐Ÿ“Œ 5์žฅ. ๋ฒจ๋กœํผํŠธ์™€ ํ•จ๊ป˜ ํ•˜๋Š” ๋ชจ๋˜ ๋ฆฌ์•กํŠธ: Router
  • ๐Ÿ“Œ 6์žฅ. ๋ฒจ๋กœํผํŠธ์™€ ํ•จ๊ป˜ ํ•˜๋Š” ๋ชจ๋˜ ๋ฆฌ์•กํŠธ: Redux (2ํšŒ๋…/2ํšŒ๋…)
  • ๐Ÿ“Œ 7์žฅ. ๋ฒจ๋กœํผํŠธ์™€ ํ•จ๊ป˜ ํ•˜๋Š” ๋ชจ๋˜ ๋ฆฌ์•กํŠธ: Redux ๋ฏธ๋“ค์›จ์–ด
  • ๐Ÿ“Œ 8์žฅ. ๋ฒจ๋กœํผํŠธ์™€ ํ•จ๊ป˜ ํ•˜๋Š” ๋ชจ๋˜ ๋ฆฌ์•กํŠธ: ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ์™€ ๋ฆฌ์•กํŠธ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๊ธฐ

react-fastcampus-velopert's People

Contributors

sannimdev avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.