์น๊ณผ ๋ค์ดํฐ๋ธ UI๋ฅผ ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ
๋ฑํ ์์
์ฌ๋๋ค์ด ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํจ
์ฝ๋ฉ์ ํ
๐ ๋ ๋ณด๋ฌ๊ฐ๊ธฐ
ํ๋์ ํ์ด์ง(HTML)๋ก ๊ตฌ์ฑ๋ ์ดํ๋ฆฌ์ผ์ด์
MPA๊ฐ ๊ฐ์ง๋ ๋ถํธํจ(๊น๋นก๊ฑฐ๋ฆผ, ๋ ๋๋ง ์๋) ๋๋ฌธ์ ๋ฑ์ฅ
SPA์ ์ฅ๋จ์
์ฅ์
- ๋น ๋ฅธ ์๋ต ์๋์ ๋ถ๋๋ฌ์ด ์ฌ์ฉ์ ๊ฒฝํ
- ํจ์จ์ ์ธ ์์ ์ฌ์ฉ
- ๊ฐ๋ฐ ๋ฐ ์ ์ง๋ณด์ ์ฉ์ด
๋จ์
- ์ด๊ธฐ ๋ก๋ฉ ์๊ฐ์ด ๊ธธ ์ ์์
- ๊ฒ์ ์์ง ์ต์ ํ(SEO) ์ด๋ ค์
- ๋ธ๋ผ์ฐ์ ๋ค๋ก๊ฐ๊ธฐ ๊ธฐ๋ฅ ๊ตฌํ ๋ณต์ก
โ๏ธ MPA(Multi Page Application)
CSR(Client Side Rendering)
์น ํ์ด์ง์ ์ฝํ ์ธ ๋ฅผ ํด๋ผ์ด์ธํธ(๋ธ๋ผ์ฐ์ )์์ ๋ ๋๋งํ๋ ๋ฐฉ์SSR(Server Side Rendering)
์น ํ์ด์ง์ ์ฝํ ์ธ ๋ฅผ ์๋ฒ์์ ๋ ๋๋งํ๊ณ , ๋ ๋๋ง๋ HTML์ ํด๋ผ์ด์ธํธ(๋ธ๋ผ์ฐ์ )์ ์ ๋ฌํ๋ ๋ฐฉ์Rendering =
๋ฌธ์ ์์ฒด๋ฅผ ์์ฑํ๋ ๊ณผ์
โ ๏ธ๋ธ๋ผ์ฐ์ ๋ ๋๋ง(์๊ฐ์ ์ธ ํ์ด์ง๋ฅผ ํ์ํ๋ ๋จ๊ณ)๊ณผ ๋ค๋ฆ!
๋ํ์ ์ธ SPA
React, Vue, Angular
๊ธฐ๋ณธ ์ ์ : Node.js ์ค์น
=> JS ๋ฐํ์ ํ๊ฒฝ์์ ํจํค์ง ๊ด๋ฆฌ์๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํจ
๋ ธ๋ ํจํค์ง ๊ด๋ฆฌ์
โnpm
- node.js ์ค์น ์ ์๋ ์ค์น
- Node Package Manager์ ์ฝ์
- JS ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ํธ์คํ ํ๋ ๋ ์ง์คํธ๋ฆฌ ์ญํ
โyarn
- 2016๋ Facebook, Google, Tilde์ ๊ฐ์ ํ์ฌ์์ ๊ณต๋ ์์ ์ผ๋ก ๊ฐ๋ฐํ ํจํค์ง ๊ด๋ฆฌ์
- npm๊ณผ์ ํธํ์ฑ์ด ์ข๊ณ , ์๋๋ ์์ ์ฑ ์ธก๋ฉด์์ npm๋ณด๋ค ์ข์
ํฐ๋ฏธ๋ ํ๊ฒฝ์ผ๋ก ์ด๋
yarn ์ค์น
npm install -g yarn
yarn ์ค์น ์ฌ๋ถ(๋ฒ์ ผ) ํ์ธ
yarn -v
์ฐธ๊ณ ์๋ฃ
npm ๊ณผ yarn ์ ๋ญ๊ฐ ๋ค๋ฅผ๊น ?