Front-End
를 담당하는 프레임워크 중 3대장은 Vue
, React
, Angular
이 있다.
그 중, 가장 최근에 나온 Vue
에 대하여 알아보기 위해 포스팅을 시작한다.
학습
에 목적을 둔 글임을 밝힙니다.
Vue.js
는 웹 페이지 개발을 위한 프론트엔드 프레임워크이다.
창시자인 Evan You
는 앵귤러와 리액트의 장점을 살려 Vue를 만들었다고 한다.
다음은 Vue.js 장점이라고 알려진 특징이다.
앵귤러의
데이터 바인딩
특성과 리액트의가상 돔
기반 렌더링 특징을 가지고 있다.
Vue.js는 다음과 같이 크게 4가지 특징을 지닌다.
Vue.js는 MVVM
패턴에 해당하는 화면단 라이브러리이다. 이러한 방식을 채택함으로써, 화면의 요소들을 제어하는 코드와 데이터 제어 로직을 분리
하여 코드를 더 직관적
으로 이해가 가능하며, 추후 유지보수
가 용이하다.
컴포넌트(component)
란 레고 블럭과 같다. 뷰의 컴포넌트들을 잘 쌓아서 화면이 구성 가능한데, 이러한 방식의 장점은 다음과 같다.
뷰는 앵귤러의 양방향 데이터 바인딩
과 리액트의 단방향 데이터 흐름
의 장점을 모두 결합한 프레임워크이다.
양방향데이터 바인딩이란, 화면에 표시되는 값과 프레임워크 모델 데이터 값이
동기화
되어, 한쪽의 변경이 다른쪽에자동 반영
되는 것이며,
단뱡향 데이터 흐름은 항상 상위 컴포넌트에서 하위 컴포넌트로단방향 전달
하도록 되어있는 구조를 의미
뷰는 빠른 화면 렌더링을 위해 가상 돔(Virtual DOM)
방식을 적용하여, 사용자 인터렉션이 많은 요즘 웹 화면에 적합한 동작 구조를 지닌다.
가상 돔
을 사용하면, 특정 돔 요소를 추가하거나 삭제하는 변경이 일어날 때 화면 전체를 다시 그리지 않고,
프레임 워크에서 정의한 방식대로 화면을갱신
하여 성능을 높임
간단하게 뷰의 특징과 장점에 대해서 알아보았지만, 백앤드 개발을 주로 하는 나에게는 잘 다가오지 않는다..
역시 Hello world
를 한 번 해봐야 알 것 같다. 그런 의미에서 다음 글에서는 간단한 프로젝트를 만들어 보도록 하겠다.