⚛️ ๋ฆฌ์•กํŠธ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์„ธํŒ…: CRA vs Vite

โš›๏ธ ๋ฆฌ์•กํŠธ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์„ธํŒ…: CRA vs Vite

๐ŸŽฏ ํ”„๋ก ํŠธ์—”๋“œ ํ”„๋ ˆ์ž„์›Œํฌ: ๊ฐœ๋…๋ถ€ํ„ฐ 3๋Œ€์žฅ (React, Vue, Angular) ๋น„๊ต ๋ถ„์„๊นŒ์ง€

์›น์‚ฌ์ดํŠธ๋‚˜ ์•ฑ์„ ๋งŒ๋“ค ๋•Œ, ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ณด์ด๋Š” ๋ชจ๋“  ์˜์—ญ์„ ํ”„๋ก ํŠธ์—”๋“œ(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) ์›์น™์„ ๊ฐ•๋ ฅํ•˜๊ฒŒ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • ์žฅ์ : ๋ฐฉ๋Œ€ํ•œ ๊ธฐ๋Šฅ๊ณผ ์—„๊ฒฉํ•œ ๊ตฌ์กฐ ๋•๋ถ„์— ๋Œ€๊ทœ๋ชจ, ๋ณต์žกํ•œ ํ”„๋กœ์ ํŠธ์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ์˜ ์ผ๊ด€์„ฑ์ด ๋†’๊ณ , ์žฅ๊ธฐ์ ์ธ ์œ ์ง€๋ณด์ˆ˜์— ์œ ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
ํ”„๋ก ํŠธ์—”๋“œ 3๋Œ€์žฅ ํ•ต์‹ฌ ๋น„๊ต ์š”์•ฝ
๊ตฌ๋ถ„ React Vue.js Angular
๋ถ„๋ฅ˜ UI ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํ”„๋กœ๊ทธ๋ ˆ์‹œ๋ธŒ ํ”„๋ ˆ์ž„์›Œํฌ ํ’€-์Šคํƒ ํ”„๋ ˆ์ž„์›Œํฌ
ํ•™์Šต ๋‚œ์ด๋„ ์ค‘๊ฐ„ (JSX ํ•™์Šต ํ•„์š”) ๊ฐ€์žฅ ์‰ฌ์›€ ๊ฐ€์žฅ ์–ด๋ ค์›€ (ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ, OOP)
์ฃผ์š” ํŠน์ง• Virtual DOM, ๋‹จ๋ฐฉํ–ฅ ๋ฐ”์ธ๋”ฉ Virtual DOM, ์–‘๋ฐฉํ–ฅ ๋ฐ”์ธ๋”ฉ ์‹ค์ œ DOM, TypeScript, ์—„๊ฒฉํ•œ ๊ตฌ์กฐ
์ ํ•ฉํ•œ ํ”„๋กœ์ ํŠธ ๋ชจ๋“  ๊ทœ๋ชจ, ๋ชจ๋ฐ”์ผ ํ™•์žฅ์„ฑ ์ž‘์€~์ค‘๊ฐ„ ๊ทœ๋ชจ, ๋น ๋ฅธ ๊ฐœ๋ฐœ ๋Œ€๊ทœ๋ชจ, ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ๊ธ‰ ์•ฑ
์‹œ์žฅ ์ ์œ ์œจ ์ตœ๊ณ  ๋†’์Œ (ํŠนํžˆ ์•„์‹œ์•„๊ถŒ) ์•ˆ์ •์  (๋Œ€๊ธฐ์—… ์„ ํ˜ธ)

๐Ÿ’ก IT ์ดˆ๋ณด์ž๋ฅผ ์œ„ํ•œ ํ”„๋ ˆ์ž„์›Œํฌ ์„ ํƒ ๊ฐ€์ด๋“œ ๋ฐ ์ตœ์‹  ๋™ํ–ฅ

์–ด๋–ค ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ๋จผ์ € ๋ฐฐ์›Œ์•ผ ํ• ์ง€ ๊ณ ๋ฏผํ•˜๋Š” ๋…์ž ์—ฌ๋Ÿฌ๋ถ„์„ ์œ„ํ•ด, IT ์ „๋ฌธ๊ฐ€์˜ ์‹ค๋ฌด์ ์ธ ๊ด€์ ์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“š IT ์ „๊ณต์ž/์ดˆ๋ณด ํ•™์ƒ์„ ์œ„ํ•œ ํ•™์Šต ๋กœ๋“œ๋งต

์„ ํƒ ๊ธฐ์ค€ ์š”์•ฝ

  1. ์ทจ์—… ๋ฐ ์‹œ์žฅ์„ฑ: ํ˜„์žฌ ๊ตญ๋‚ด์™ธ ์ฑ„์šฉ ์‹œ์žฅ์—์„œ React์˜ ๋น„์ค‘์ด ๊ฐ€์žฅ ๋†’์Šต๋‹ˆ๋‹ค. ๊ฐ•๋ ฅํ•œ ์ปค๋ฎค๋‹ˆํ‹ฐ์™€ ์ƒํƒœ๊ณ„๋Š” ํ•™์Šต์˜ ์ฃผ์š” ์ด์ ์ž…๋‹ˆ๋‹ค.
  2. ์‰ฌ์šด ์ง„์ž…: ํ”„๋กœ๊ทธ๋ž˜๋ฐ์— ์ต์ˆ™ํ•˜์ง€ ์•Š๋‹ค๋ฉด, ํ•™์Šต ๊ณก์„ ์ด ์™„๋งŒํ•œ Vue.js๋กœ ์‹œ์ž‘ํ•˜์—ฌ ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์˜ ์žฌ๋ฏธ๋ฅผ ๋จผ์ € ๋А๊ปด๋ณด๋Š” ๊ฒƒ๋„ ์ข‹์€ ์ „๋žต์ž…๋‹ˆ๋‹ค.
  3. ๋Œ€๊ทœ๋ชจ ์‹œ์Šคํ…œ: ๋ณต์žกํ•œ ์‹œ์Šคํ…œ์˜ ๊ตฌ์กฐ๋ฅผ ๋ฐฐ์šฐ๊ณ  ์‹ถ๋‹ค๋ฉด, Angular์˜ ๊ฐ์ฒด ์ง€ํ–ฅ์ ์ด๊ณ  ์ฒด๊ณ„์ ์ธ ์ ‘๊ทผ ๋ฐฉ์‹์ด ํฐ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ฒฐ๋ก ์ ์ธ ์กฐ์–ธ: ์ฒ˜์Œ ์‹œ์ž‘ํ•˜๋Š” ๋ถ„์ด๋ผ๋ฉด React๋ฅผ ์šฐ์„ ์ ์œผ๋กœ ํ•™์Šตํ•˜๋Š” ๊ฒƒ์„ ๊ฐ•๋ ฅํžˆ ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹ค. 
์‹œ์žฅ์˜ ์••๋„์ ์ธ ์ ์œ ์œจ ๋•๋ถ„์— ํ•™์Šต ์ž๋ฃŒ, ์ปค๋ฎค๋‹ˆํ‹ฐ ์ง€์›, ๊ทธ๋ฆฌ๊ณ  ์ฑ„์šฉ ๊ธฐํšŒ๊ฐ€ ๊ฐ€์žฅ ํ’๋ถ€ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๋งˆ๋ฌด๋ฆฌํ•˜๋ฉฐ: ์›น ๊ฐœ๋ฐœ์˜ ๋ฏธ๋ž˜๋ฅผ ์ค€๋น„ํ•˜๋Š” ์ž์„ธ

ํ”„๋ก ํŠธ์—”๋“œ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ์›น ๊ฐœ๋ฐœ์˜ ์†๋„์™€ ์งˆ์„ ํ•œ ๋‹จ๊ณ„ ๋Œ์–ด์˜ฌ๋ฆฐ ํ˜์‹ ์ ์ธ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. 
React, Vue, Angular๋Š” ๊ฐ๊ฐ ๋‹ค๋ฅธ ์ฒ ํ•™๊ณผ ์žฅ์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ์ง€๋งŒ, 
๋ชจ๋‘ ์ปดํฌ๋„ŒํŠธ ๊ธฐ๋ฐ˜ ์•„ํ‚คํ…์ฒ˜์™€ ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ๋ผ๋Š” ํ•ต์‹ฌ ์›์น™์„ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๊ธฐ ์œ„ํ•œ ์—ฌ์ •์—์„œ, 

๊ธฐ์ˆ ์˜ ํ•ต์‹ฌ ์›๋ฆฌ๋ฅผ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์ด ๋ฌด์—‡๋ณด๋‹ค ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

์˜ค๋Š˜ ํ•™์Šตํ•œ ๊ฐ€์ƒ DOM๊ณผ ์ปดํฌ๋„ŒํŠธ ๊ฐœ๋…์„ ๊ธฐ๋ฐ˜์œผ๋กœ, 

๊ฐ€์žฅ ๊ด€์‹ฌ์ด ๊ฐ€๋Š” ํ”„๋ ˆ์ž„์›Œํฌ(์ถ”์ฒœ: React)๋ฅผ ์„ ํƒํ•˜์—ฌ ์ž‘์€ ํ† ์ด ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ•ด ๋ณด์‹œ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ์ง€์‹์€ ์‹ค์Šต์„ ํ†ตํ•ด ๋น„๋กœ์†Œ ์—ฌ๋Ÿฌ๋ถ„์˜ ๊ฒƒ์ด ๋ฉ๋‹ˆ๋‹ค!

๋Œ“๊ธ€ ์“ฐ๊ธฐ