๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐ŸŒŒ | WEB DEV/React

[React] 0. React๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ  & ์ดˆ๊ธฐ ์„ธํŒ…

by KASSID 2023. 5. 5.

๋ชฉ์ฐจ

    728x90

    ํ˜„์žฌ ์›น ํ”„๋ ˆ์ž„์›Œํฌ ์ค‘ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•˜๊ณ  ์‹œ์žฅ์—์„œ ์›ํ•˜๋Š” React์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž!

     

    1. React๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ 

    ์žฅ์  1_ ๋ฆฌ์•กํŠธ๋Š” SPA(Single Page Application)๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

    ์ฆ‰, ๋ชจ๋ฐ”์ผ ์–ดํ”Œ์ฒ˜๋Ÿผ ์ƒˆ๋กœ๊ณ ์นจ์„ ํ•˜์ง€ ์•Š๊ณ  ํŽ˜์ด์ง€ ์ „ํ™˜ ๋“ฑ์ด ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ๊ตฌํ˜„์ด ๋˜๋„๋ก ์ œ์ž‘ํ•  ์ˆ˜ ์žˆ๋‹ค.

     

    ๋ฌผ๋ก  Vanilla JS๋กœ๋„ SPA๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ React๋ฅผ ์ด์šฉํ•˜๋Š” ์ชฝ์ด ํ›จ์”ฌ ๊ฐ„ํŽธํ•˜๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

     

    ์žฅ์  2_ Html์˜ ์žฌ์‚ฌ์šฉ์ด ํŽธ๋ฆฌํ•ด์ง„๋‹ค.

    html์„ ํ•จ์ˆ˜, array, object ๋“ฑ์— ๋‹ด์•„์„œ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์žฌ์‚ฌ์šฉ์ด ํŽธ๋ฆฌํ•˜๋‹ค.

     

    ์žฅ์  3_React Native๋ฅผ ์ด์šฉํ•ด ๋ชจ๋ฐ”์ผ ์–ดํ”Œ ๊ตฌํ˜„๋„ ๊ฐ€๋Šฅํ•˜๋‹ค.

     

    ์ด๋Ÿฌํ•œ ์žฅ์ ๋“ค ๋ฟ์•„๋‹ˆ๋ผ ์‹œ์žฅ์ด ๊ฐ€์žฅ ์š”๊ตฌํ•˜๋Š” ๊ธฐ์ˆ ์ด๊ธฐ ๋•Œ๋ฌธ์— ์›น ๊ฐœ๋ฐœ์ž๋กœ์„œ ๊ผญ ๊ณต๋ถ€ํ•ด์•ผํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค!

     

     


    2. React ์ดˆ๊ธฐ ์„ธํŒ…

    1) Node.js ์„ค์น˜

    2) IDE ์„ ํƒ & ์ž‘์—…ํด๋” ์ƒ์„ฑ

    3) ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ

     

    ํ„ฐ๋ฏธ๋„์— ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•œ๋‹ค.

    npx create-react-app ํ”„๋กœ์ ํŠธ๋ช…

    ์ด๋Ÿฌํ•œ ๋ฐฉ๋ฒ• ๋ง๊ณ ๋„ jsํŒŒ์ผ์— React๋ฅผ ์ง์ ‘ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ์ง€๋งŒ 

    ์ข€ ๋” ๊ฐ„ํŽธํ•˜๊ณ  ๋น ๋ฅด๊ฒŒ ์ง„ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด์„œ

    create-react-app ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ด์šฉํ•˜์—ฌ React ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

     

    ๋ช…๋ น์–ด ์‹คํ–‰ ์‹œ React ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๊ทธ ๊ฒฐ๊ณผ๋กœ ์œ„์™€ ๊ฐ™์€ ํŒŒ์ผ๋ฐ ํด๋”๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

     

    - node_modules : ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ฝ”๋“œ ์ฐฝ๊ณ 

    - public : ์ •์  ํŒŒ์ผ ์ฐฝ๊ณ 

    - src : ์ฝ”๋“œ ์ฐฝ๊ณ 

    - package.json : ํ”„๋กœ์ ํŠธ ์ •๋ณด ํŒŒ์ผ

     

    ์ด๋•Œ src/App.js๊ฐ€ ํ”„๋กœ์ ํŠธ์˜ ๋ฉ”์ธ ํŽ˜์ด์ง€๊ฐ€ ๋œ๋‹ค.

     

    App.js์— ์“ฐ์ธ html ์ฝ”๋“œ๋Š” index.js์— ์˜ํ•ด์„œ static/index.html์— ๋งคํ•‘์ด ๋œ๋‹ค.

     

    4) ํ”„๋กœ์ ํŠธ ์‹คํ–‰์‹œํ‚ค๊ธฐ

    // ํ”„๋กœ์ ํŠธ ํด๋”์— ์ ‘๊ทผํ•œ ํ›„
    npm start

    ๋ฐ˜๋“œ์‹œ ํ”„๋กœ์ ํŠธ ํด๋”์— ์ ‘๊ทผํ•œ ํ›„ ์œ„์˜ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•ด์•ผํ•œ๋‹ค.

     

    ์ž…๋ ฅ ์‹œ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ž๋™ ์‹คํ–‰๋˜๊ณ  localhost:3000์— ์•„๋ž˜์™€ ๊ฐ™์ด ์ž‘๋™ํ•œ๋‹ค.

     

     

     

    ๋Œ“๊ธ€