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