์น์ฌ์ดํธ๋ ์ฑ์ ๋ง๋ค ๋, ์ฌ์ฉ์์๊ฒ ๋ณด์ด๋ ๋ชจ๋ ์์ญ์
ํ๋ก ํธ์๋(Front-end)๋ผ๊ณ ํฉ๋๋ค.
์ด ํ๋ก ํธ์๋ ๊ฐ๋ฐ์
๋์ฑ ํจ์จ์ ์ด๊ณ ์ฒด๊ณ์ ์ผ๋ก ๋๋ ๋๊ตฌ๊ฐ ๋ฐ๋ก
ํ๋ ์์ํฌ์
๋๋ค.
๋
์ ์ฌ๋ฌ๋ถ, ์ด ๊ธ์ ํตํด ๋ณต์กํ๊ฒ๋ง
๋๊ปด์ก๋ ํ๋ก ํธ์๋ ํ๋ ์์ํฌ์ ํต์ฌ์ ๋ช
ํํ๊ฒ ํ์
ํ๊ณ , ์น ๊ฐ๋ฐ์
์ต์ ํธ๋ ๋๋ฅผ ์ดํดํ๋ ๊ธฐ์ด๋ฅผ ๋ค์ง์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
๐ ํ๋ก ํธ์๋ ํ๋ ์์ํฌ๋ ๋ฌด์์ธ๊ฐ? ํต์ฌ ์๋ฆฌ ์ดํด
ํต์ฌ ์ ์: ํ๋ก ํธ์๋ ํ๋ ์์ํฌ๋ ์น ์ ํ๋ฆฌ์ผ์ด์
์
์ฌ์ฉ์ ์ธํฐํ์ด์ค(UI)๋ฅผ ๊ตฌ์ถํ๊ธฐ ์ํ
ํ์คํ๋ ๊ตฌ์กฐ(๋ผ๋)์
ํ์ ๋๊ตฌ(Tool)๋ฅผ ์ ๊ณตํ๋ ์ํํธ์จ์ด ํ๊ฒฝ์
๋๋ค.
๋จ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋์ด, ๊ฐ๋ฐ์ ๋ฐฉํฅ๊ณผ ๊ท์น์ ์ ์ํฉ๋๋ค.
๐ก ํ๋ ์์ํฌ ์ฌ์ฉ์ ํ์์ฑ๊ณผ ์ด์
๊ณผ๊ฑฐ์๋ JavaScript๋ก ๋ชจ๋ ๊ธฐ๋ฅ์ ์ฒ์๋ถํฐ ์ฝ๋ฉํ์ง๋ง,
์น ์๋น์ค๊ฐ
๋ณต์กํด์ง๋ฉด์ ์์ฐ์ฑ๊ณผ ์ ์ง๋ณด์์ฑ์ด ์ค์ํด์ก์ต๋๋ค.
ํ๋ ์์ํฌ๋ ์ด
๋ฌธ์ ๋ฅผ ํด๊ฒฐํด ์ค๋๋ค.
- ์์ฐ์ฑ ํฅ์: ์ด๋ฏธ ๋ง๋ค์ด์ง ๊ธฐ๋ฅ๊ณผ ๊ท์น์ ์ฌ์ฉํ์ฌ ์ฝ๋๋ฅผ ๋น ๋ฅด๊ฒ ์์ฑํ ์ ์์ต๋๋ค.
- ์ ์ง๋ณด์ ์ฉ์ด์ฑ: ์ฒด๊ณ์ ์ธ ๊ตฌ์กฐ ๋๋ถ์ ์ฝ๋๋ฅผ ์ดํดํ๊ณ ์์ ํ๊ธฐ๊ฐ ์ฝ์ต๋๋ค.
- ์ฌ์ฌ์ฉ์ฑ ๊ทน๋ํ: UI๋ฅผ ๋ ๋ฆฝ์ ์ธ ์ปดํฌ๋ํธ(Component) ๋จ์๋ก ๋ถ๋ฆฌํ์ฌ ์ฌ๋ฌ ๊ณณ์์ ์ฌ์ฌ์ฉํ ์ ์์ต๋๋ค.
- ์ฑ๋ฅ ์ต์ ํ: ๊ฐ์ DOM(Virtual DOM) ๋ฑ์ ๊ธฐ์ ์ ํตํด ์น ํ์ด์ง ์ ๋ฐ์ดํธ ์ฑ๋ฅ์ ํฅ์์ํต๋๋ค.
ํนํ ์ปดํฌ๋ํธ ๊ธฐ๋ฐ ์ํคํ ์ฒ๋ ํ๋ก ํธ์๋ ํ๋ ์์ํฌ์ ํต์ฌ์ ๋๋ค.
์ ์ฒด UI๋ฅผ ๋ ๋ฆฝ์ ์ธ ๋ฒฝ๋(์ปดํฌ๋ํธ)๋ก ๋๋์ด ์กฐ๋ฆฝํ๋ ๋ฐฉ์์ด๋ผ ์๊ฐํ์๋ฉด ์ฝ์ต๋๋ค.
๐ข ์ค์ ์ฉ์ด ์ค๋ช
:
- Virtual DOM (๊ฐ์ DOM): ์ค์ ์น ํ์ด์ง(DOM)๋ฅผ ์ง์ ์กฐ์ํ์ง ์๊ณ , ๋ฉ๋ชจ๋ฆฌ์์์ ๊ฐ์์ DOM์ ๋ณต์ ํ์ฌ ๋ณ๊ฒฝ ์ฌํญ์ ๋น๊ต ํ ์ต์ํ์ ์์ญ๋ง ์ ๋ฐ์ดํธํ๋ ๊ธฐ์ . ์ฑ๋ฅ ํฅ์์ ํต์ฌ์ ๋๋ค.
- ์ปดํฌ๋ํธ (Component): ๋ ๋ฆฝ์ ์ธ ๊ธฐ๋ฅ์ ์ํํ๋ UI์ ์ต์ ๋จ์ (์: ๋ฒํผ, ๋ด๋น๊ฒ์ด์ ๋ฐ, ์นด๋).
๐ ํ๋ก ํธ์๋ 3๋์ฅ ์ฌ์ธต ๋น๊ต: React, Vue, Angular
ํ์ฌ ์์ฅ์ ์ฃผ๋ํ๊ณ ์๋ ์ธ ๊ฐ์ง ์ฃผ์ ํ๋ก ํธ์๋ ๊ธฐ์ ์ ์ฌ์ธต์ ์ผ๋ก ๋น๊ต ๋ถ์ํ์ฌ ๋ ์ ์ฌ๋ฌ๋ถ์ ํ์ต ๋ฐฉํฅ ์ค์ ์ ๋์์ ๋๋ฆฌ๊ณ ์ ํฉ๋๋ค.
๐ก 1. React (๋ฆฌ์กํธ) - UI ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์๋์ ๊ฐ์
React๋ Facebook์์ ๊ฐ๋ฐํ์ผ๋ฉฐ,
์๋ฐํ ๋งํ๋ฉด ํ๋ ์์ํฌ๊ฐ ์๋
JavaScript ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ์์ํ์ต๋๋ค.
ํ์ง๋ง ๊ด๋ฒ์ํ
์ํ๊ณ์ ๊ฐ๋ ฅํ ์ปค๋ฎค๋ํฐ ์ง์ ๋๋ถ์ ์ฌ์ค์ ํ๋ ์์ํฌ์ฒ๋ผ ์ฌ์ฉ๋ฉ๋๋ค.
- ํน์ง: Virtual DOM์ ํ์ฉํ์ฌ ๋น ๋ฅธ ๋ ๋๋ง์ ์ ๊ณตํฉ๋๋ค. JSX(JavaScript XML) ๋ฌธ๋ฒ์ ์ฌ์ฉํ์ฌ HTML ๊ตฌ์กฐ๋ฅผ JavaScript ์ฝ๋ ๋ด๋ถ์ ์์ฑํ๋ ๊ฒ์ด ํน์ง์ ๋๋ค.
- ์ฅ์ : ์๋์ ์ธ ๊ฐ๋ฐ์ ์์ ์ํ๊ณ. ์๋ฃ๊ฐ ํ๋ถํ์ฌ ๋ฌธ์ ํด๊ฒฐ์ด ์ฝ๊ณ , ๋ชจ๋ฐ์ผ ์ฑ ๊ฐ๋ฐ(React Native)๋ก์ ํ์ฅ์ฑ์ด ๋ฐ์ด๋ฉ๋๋ค.
๐ก 2. Vue.js (๋ทฐ) - ์ ๊ทผ ์ฉ์ด์ฑ๊ณผ ์ ์ฐํจ
Vue๋ ๊ฐ์ธ์ด ๊ฐ๋ฐ์ ์์ํ์ง๋ง,
ํ์ฌ๋ ๊ฐ๋ ฅํ ์ปค๋ฎค๋ํฐ์ ํ์ฌ(Vue
Technology)์ ์ง์์ ๋ฐ๊ณ ์์ต๋๋ค.
๋ฐฐ์ฐ๊ธฐ ์ฌ์ด ๋ฌธ๋ฒ์ผ๋ก ์ด๋ณด์์๊ฒ ํนํ
์ธ๊ธฐ๊ฐ ๋ง์ต๋๋ค.
- ํน์ง: HTML, CSS, JavaScript๋ฅผ ๋ถ๋ฆฌํ๋ ์ ํต์ ์ธ ๋ฐฉ์์ ์ ํธํฉ๋๋ค. ์๋ฐฉํฅ ๋ฐ์ดํฐ ๋ฐ์ธ๋ฉ์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ง์ํ์ฌ ๋ฐ์ดํฐ ๊ด๋ฆฌ์ ํธ์์ฑ์ด ๋์ต๋๋ค.
- ์ฅ์ : ํ์ต ๊ณก์ ์ด ๊ฐ์ฅ ์๋งํ์ฌ IT ์ ๋ฌธ์๊ฐ ๋น ๋ฅด๊ฒ ์ฑ๊ณผ๋ฅผ ๋ด๊ธฐ์ ์ข์ต๋๋ค. ์ ์ฐ์ฑ์ด ๋์ ์๊ท๋ชจ ํ๋ก์ ํธ๋ ๊ธฐ์กด ํ๋ก์ ํธ์ ์ ์ง์ ์ผ๋ก ์ ์ฉํ๊ธฐ ์ข์ต๋๋ค.
๐ก 3. Angular (์ต๊ทค๋ฌ) - ์ํฐํ๋ผ์ด์ฆ๊ธ ํ์ค
Angular๋ Google์์ ๊ฐ๋ฐํ์ผ๋ฉฐ,
์ด๊ธฐ AngularJS์ ํ์์์
๋๋ค.
๋๊ท๋ชจ
์ ํ๋ฆฌ์ผ์ด์
๊ฐ๋ฐ์ ์ํ ์๋ฒฝํ ํ-์คํ ํ๋ ์์ํฌ๋ฅผ
์งํฅํฉ๋๋ค.
- ํน์ง: TypeScript(MS ๊ฐ๋ฐ ์ธ์ด)๋ฅผ ๊ธฐ๋ณธ ์ธ์ด๋ก ์ฑํํ๋ฉฐ, ๋ชจ๋ํ์ ์ข ์์ฑ ์ฃผ์ (Dependency Injection) ๋ฑ ๊ฐ์ฒด ์งํฅ(OOP) ์์น์ ๊ฐ๋ ฅํ๊ฒ ์ ์ฉํฉ๋๋ค.
- ์ฅ์ : ๋ฐฉ๋ํ ๊ธฐ๋ฅ๊ณผ ์๊ฒฉํ ๊ตฌ์กฐ ๋๋ถ์ ๋๊ท๋ชจ, ๋ณต์กํ ํ๋ก์ ํธ์ ์ ํฉํฉ๋๋ค. ์ฝ๋์ ์ผ๊ด์ฑ์ด ๋๊ณ , ์ฅ๊ธฐ์ ์ธ ์ ์ง๋ณด์์ ์ ๋ฆฌํฉ๋๋ค.
| ๊ตฌ๋ถ | React | Vue.js | Angular |
|---|---|---|---|
| ๋ถ๋ฅ | UI ๋ผ์ด๋ธ๋ฌ๋ฆฌ | ํ๋ก๊ทธ๋ ์๋ธ ํ๋ ์์ํฌ | ํ-์คํ ํ๋ ์์ํฌ |
| ํ์ต ๋์ด๋ | ์ค๊ฐ (JSX ํ์ต ํ์) | ๊ฐ์ฅ ์ฌ์ | ๊ฐ์ฅ ์ด๋ ค์ (ํ์ ์คํฌ๋ฆฝํธ, OOP) |
| ์ฃผ์ ํน์ง | Virtual DOM, ๋จ๋ฐฉํฅ ๋ฐ์ธ๋ฉ | Virtual DOM, ์๋ฐฉํฅ ๋ฐ์ธ๋ฉ | ์ค์ DOM, TypeScript, ์๊ฒฉํ ๊ตฌ์กฐ |
| ์ ํฉํ ํ๋ก์ ํธ | ๋ชจ๋ ๊ท๋ชจ, ๋ชจ๋ฐ์ผ ํ์ฅ์ฑ | ์์~์ค๊ฐ ๊ท๋ชจ, ๋น ๋ฅธ ๊ฐ๋ฐ | ๋๊ท๋ชจ, ์ํฐํ๋ผ์ด์ฆ๊ธ ์ฑ |
| ์์ฅ ์ ์ ์จ | ์ต๊ณ | ๋์ (ํนํ ์์์๊ถ) | ์์ ์ (๋๊ธฐ์
์ ํธ) |
๐ก IT ์ด๋ณด์๋ฅผ ์ํ ํ๋ ์์ํฌ ์ ํ ๊ฐ์ด๋ ๋ฐ ์ต์ ๋ํฅ
์ด๋ค ํ๋ ์์ํฌ๋ฅผ ๋จผ์ ๋ฐฐ์์ผ ํ ์ง ๊ณ ๋ฏผํ๋ ๋ ์ ์ฌ๋ฌ๋ถ์ ์ํด, IT ์ ๋ฌธ๊ฐ์ ์ค๋ฌด์ ์ธ ๊ด์ ์ ์ ์ํฉ๋๋ค.
๐ IT ์ ๊ณต์/์ด๋ณด ํ์์ ์ํ ํ์ต ๋ก๋๋งต
์ ํ ๊ธฐ์ค ์์ฝ
- ์ทจ์ ๋ฐ ์์ฅ์ฑ: ํ์ฌ ๊ตญ๋ด์ธ ์ฑ์ฉ ์์ฅ์์ React์ ๋น์ค์ด ๊ฐ์ฅ ๋์ต๋๋ค. ๊ฐ๋ ฅํ ์ปค๋ฎค๋ํฐ์ ์ํ๊ณ๋ ํ์ต์ ์ฃผ์ ์ด์ ์ ๋๋ค.
- ์ฌ์ด ์ง์ : ํ๋ก๊ทธ๋๋ฐ์ ์ต์ํ์ง ์๋ค๋ฉด, ํ์ต ๊ณก์ ์ด ์๋งํ Vue.js๋ก ์์ํ์ฌ ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ ์ฌ๋ฏธ๋ฅผ ๋จผ์ ๋๊ปด๋ณด๋ ๊ฒ๋ ์ข์ ์ ๋ต์ ๋๋ค.
- ๋๊ท๋ชจ ์์คํ : ๋ณต์กํ ์์คํ ์ ๊ตฌ์กฐ๋ฅผ ๋ฐฐ์ฐ๊ณ ์ถ๋ค๋ฉด, Angular์ ๊ฐ์ฒด ์งํฅ์ ์ด๊ณ ์ฒด๊ณ์ ์ธ ์ ๊ทผ ๋ฐฉ์์ด ํฐ ๋์์ด ๋ ์ ์์ต๋๋ค.
๊ฒฐ๋ก ์ ์ธ ์กฐ์ธ: ์ฒ์ ์์ํ๋ ๋ถ์ด๋ผ๋ฉด
React๋ฅผ ์ฐ์ ์ ์ผ๋ก ํ์ตํ๋ ๊ฒ์ ๊ฐ๋ ฅํ ์ถ์ฒํฉ๋๋ค.
์์ฅ์ ์๋์ ์ธ ์ ์ ์จ ๋๋ถ์ ํ์ต ์๋ฃ, ์ปค๋ฎค๋ํฐ ์ง์, ๊ทธ๋ฆฌ๊ณ ์ฑ์ฉ
๊ธฐํ๊ฐ ๊ฐ์ฅ ํ๋ถํ๊ธฐ ๋๋ฌธ์
๋๋ค.


.jpg)
๋๊ธ ์ฐ๊ธฐ