๋ฆฌ์กํธ์ ํน์ง 3๊ฐ์ง
1. ์ ์ธํ(Declarative)
: ํ ํ์ด์ง๋ฅผ ๋ณด์ฌ์ฃผ๊ธฐ ์ํด html, css, js๋ก ๋๋ ์ ์ ๊ธฐ ๋ณด๋ค๋ ํ๋์ ํ์ผ์ ๋ช
์์ ์ผ๋ก ์์ฑํ ์ ์๊ฒ JSX๋ฅผ ํ์ฉํ ์ ์ธํ ํ๋ก๊ทธ๋๋ฐ์ ์งํฅ
const name = 'yoonhyewon'
const element = <h1>Hello,{name}</h1>
2. ์ปดํฌ๋ํธ ๊ธฐ๋ฐ (Component-Based)
- ํ๋์ ๊ธฐ๋ฅ ๊ตฌํ์ ์ํด ์ฌ๋ฌ ์ข
๋ฅ์ ์ฝ๋๋ฅผ ๋ฌถ์ด๋ ์ปดํฌ๋ํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ฐ๋ฐํจ
3. ๋ฒ์ฉ์ฑ (Learn Once, Write Anywhere)
- js ํ๋ก์ ํธ ์ด๋์๋ ์ ์ฐํ๊ฒ ์ ์ฉ ๊ฐ๋ฅ
- facebook ์์ ๊ด๋ฆฌ๋๊ณ ์์ด ์์ ์ ์ด๋ฉฐ, ์ ๋ช
ํ๊ณ , ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ ๋ชจ๋ฐ์ผ ๊ฐ๋ฐ๋ ๊ฐ๋ฅํจ
- 2020๋
๊ธฐ์ค ๊ฐ์ฅ ์ ๋ช
ํ ํ๋ก ํธ์๋ ๊ธฐ์
- ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ ์ด์ฉํด์ ๋ชจ๋ฐ์ผ ๊ฐ๋ฐ๋ ๊ฐ๋ฅ
---
index.html / index.js / app.js ๊ฐ์ ๊ด๊ณ์ ๋ํ ์ง๋ฌธ
์์ฝ ์ค๋ช
- index.html ์๋ 'root' ๋ผ๋ div๊ฐ ํ๋ ์๋ค.
- index.js ์์๋ 'root' ์ App.js ๋ฅผ ๋ ๋๋ง ์ํจ๋ค.
- App.js ์์๋ ์ค์ ๋ก ์ฌ์ฉ์์๊ฒ ๋ณด์ฌ์ค ํ๋ฉด์ ์ ์ํ๋ค.
==> ๊ณผ์ ์ ์ด ์ ๋๋ก๋ง ์ค๋ช
ํ๊ณ , ์์ธํ ๊ตฌ์กฐ๋ ๋ฐฉ์? ๊ฐ์ ๊ฑด Virtual DOM ๊ณต๋ถํ ๋ ์์ธํ๊ฒ ๊ณต๋ถํด๋ณด๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค
0. mvc ํจํด ์ค๋ช