Vue.js
ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ ์ฝ๊ฒ ํ๊ธฐ ์ํ ์๋ฐ์คํฌ๋ฆฝํธ ํ๋ ์์ํฌ
MVVM ํจํด์ ๋ทฐ๋ชจ๋ธ(ViewModel) ๋ ์ด์ด์ ํด๋นํ๋ ํ๋ฉด(View)๋จ ๋ผ์ด๋ธ๋ฌ๋ฆฌ
- View(html DOM) : ์ฌ์ฉ์์๊ฒ ๋ณด์ด๋ ํ๋ฉด
- View Model : View์ Model์ ์ค๊ฐ ์์ญ์ผ๋ก DOM Listener์ Data Binding์ ์ ๊ณตํ๋ ์์ญ
- Model(JS) : ์๋ฒ์์ ๊ฐ์ ธ์จ ๋ฐ์ดํฐ๋ฅผ ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ์ฒด๋ก ์ ์ฅ
- DOM : HTML ์์๋ฅผ ๋ด๊ณ ์๋ ๋ฐ์ดํฐ ํธ๋ฆฌ
- DOM Listener : DOM ๋ณ๊ฒฝ์ ์ฆ๊ฐ์ ์ผ๋ก ๋ฐ์ํ์ฌ ํน์ ๋ก์ง์ ์ํ
- Data Binding : View์ ํ์๋๋ ๋ด์ฉ๊ณผ ๋ชจ๋ธ์ ๋ฐ์ดํฐ๋ฅผ ๋๊ธฐํ
์ฅ์
- ๋ฌ๋์ปค๋ธ๊ฐ ๋ฎ์
- React, Angular์ ๋นํด ๊ฐ๋ณ๊ณ ์ฑ๋ฅ์ด ๋น ๋ฆ
- React(Virtual DOM), Angular(๋ฐ์ดํฐ ๋ฐ์ธ๋ฉ)์ ์ฅ์ ์ ์ทจํจ
- ์ปดํฌ๋ํธ ๊ธฐ๋ฐ ํ๋ ์์ํฌ๋ก ๋ทฐ ๊ตฌ์ฑ, ์ฝ๋ ์ฌ์ฌ์ฉ์ด ์ฌ์
๐ก Virtual DOM
ํ๋ฉด์ ๋ณํ๊ฐ ์์ ๋ ๋ณ๊ฒฝ์ฌํญ์ ์ค์๊ฐ์ผ๋ก ์์ ํ์ง ์๊ณ , Virtual DOM์ ์ด์ฉํด ๋ฉ๋ชจ๋ฆฌ์์ ์ฒ๋ฆฌํ๊ณ DOM์ ํ๋ฒ๋ง ์์ ํ๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ๋ธ๋ผ์ฐ์ ๋ ๋ ๋๋ง์ ํ๋ฒ๋ง ํ๊ฒ ๋๊ธฐ ๋๋ฌธ์ ๋ ๋๋ง ์ฑ๋ฅ์ ๋์ธ๋ค.
Reference