Javascript FE Framework

  • Vue.js, React.js, Angular.js ๋“ฑ์€ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค(UI)๋ฅผ ๋‹จ์ผ ํŽ˜์ด์ง€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜(SPA) ๋ฐฉ์‹์œผ๋กœ ๊ฐœ๋ฐœํ•˜๋Š” ํ”„๋ก ํŠธ์—”๋“œ ํ”„๋ ˆ์ž„์›Œํฌ

๋‹จ์ผ ํŽ˜์ด์ง€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜(Single Page Application)

  • ์ดˆ๊ธฐ ๋กœ๋”ฉ ์‹œ ์›น ์‚ฌ์ดํŠธ ์ „์ฒด์— ํ•„์š”ํ•œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ, CSS, ์ด๋ฏธ์ง€ ํŒŒ์ผ ๋“ฑ ๋ชจ๋“  ์›น ์ž์›์„ ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ๋ถˆ๋Ÿฌ์™€์„œ ๋กœ๋”ฉํ•ฉ๋‹ˆ๋‹ค.

    • ์žฅ์ : ํŽ˜์ด์ง€ ์ด๋™ ์‹œ ๋กœ๋”ฉ๋œ ํŽ˜์ด์ง€์—์„œ ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ๋ณ€๊ฒฝํ•˜์—ฌ ์†๋„๊ฐ€ ๋น ๋ฅด๊ณ , ์„œ๋ฒ„์™€ ํ†ต์‹ ์„ ์ตœ์†Œํ™”ํ•ด ์›น ์ž์›์„ ํšจ์œจ์ ์œผ๋กœ ์ด์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    • ๋‹จ์ : ์ดˆ๊ธฐ ๋กœ๋”ฉ ์‹œ ๋‹น์žฅ์€ ๋ถˆํ•„์š”ํ•œ ๋ชจ๋“  ์›น ์ž์›๊นŒ์ง€ ๋ถˆ๋Ÿฌ์™€์„œ ํ™”๋ฉด ๋กœ๋”ฉ ์†๋„๊ฐ€ ๋น„๊ต์  ๋А๋ฆฝ๋‹ˆ๋‹ค.

Angular

  • ํŠน์ง•: Two-way(์–‘๋ฐฉํ–ฅ) ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ

    • Two-way(์–‘๋ฐฉํ–ฅ) ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ์€ ๋ฐ์ดํ„ฐ์™€ ์›น ํ™”๋ฉด์˜ HTML DOM์ด ์„œ๋กœ ์—ฐ๊ฒฐ๋˜์–ด ํ•œ ์ชฝ์˜ ๋ณ€๊ฒฝ์ด ๋‹ค๋ฅธ ์ชฝ์— ์ž๋™ ๋ฐ˜์˜๋˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.

  • ๋‹จ์ : ์„ฑ๋Šฅ(์†๋„) ์ €ํ•˜ - HTML DOM์˜ ๋ณต์žก๋„ ์ฆ๊ฐ€ํ•˜์—ฌ ๋ฌด๊ฒ๊ณ  ๋А๋ ค์ง€๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

React

  • ํŠน์ง•: Virtual DOM(๊ฐ€์ƒ ๋”)

    • Virtual DOM(๊ฐ€์ƒ ๋”)์€ ์ƒํƒœ ๋ณ€๊ฒฝ ์‹œ ์˜ํ–ฅ ๋ฐ›๋Š” ๋” ๋…ธ๋“œ๋ฅผ ์ง์ ‘ ์ฒ˜๋ฆฌํ•˜์ง€ ์•Š๊ณ  ๊ฐ€์ƒ ๋”์„ ๊ฐฑ์‹ ํ•œ ํ›„ ์‹ค์ œ ๋”๊ณผ ๋™๊ธฐํ™”ํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.

Vue

  • ํŠน์ง•

    • MVVM(Model-View-ViewModel) ํŒจํ„ด: ๋ฐฑ์—”๋“œ ๋กœ์ง๊ณผ ํด๋ผ์ด์–ธํŠธ ๋งˆํฌ์—…(View, UI)์„ ๋ถ„๋ฆฌํ•˜์—ฌ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•œ ํŒจํ„ด์ž…๋‹ˆ๋‹ค.

    • ์ปดํฌ๋„ŒํŠธ: ์žฌ์‚ฌ์šฉ์„ฑ์„ ๊ณ ๋ คํ•œ ํ™”๋ฉด(View)์„ ์ด๋ฃจ๋Š” ์ž‘์€ ๋‹จ์œ„์ž…๋‹ˆ๋‹ค. .vue ํŒŒ์ผ ํ•˜๋‚˜๊ฐ€ ํ•˜๋‚˜์˜ ์ปดํฌ๋„ŒํŠธ์ž…๋‹ˆ๋‹ค.

Last updated