Vue.js 란?
- 웹 개발의 단순화를 위해 개발된 자바스크립트 프레임워크
- Vue.js는 싱글 페이지 애플리케이션(SPA) 을 구축 하는데 이용된다
SPA ( Single Page Application )
- SPA 는 화면에 대한 정보를 미리 갖고 있으며, 해당 화면으로 넘어갈 때
클라이언트 내부적으로 Router 를 이용하여, 서버에 데이터를 요청하지
않고 화면을 매끄럽게 전환 할수 있다.
Vue CLI ( Command Line Interface , 명령어 기반 인터페이스)
- Vue.js Core 에서 공식으로 제공하는 인터페이스
- 애플리케이션 개발에 집중할 수 있도록 프론트엔드 프로젝트 구성을 도와주는 역할
- vue create [프로젝트] 명령어와 vue ui 를 제공
Reactivity ( 반응형 ) System
- 데이터가 바뀌면 화면도 반응하여 변하는것
=> React 와 Vue 패키지에 포함되어 있다.
MVVM (View - View Model - Model) ex) Vue.js
- View : 사용자에게 보여지는 UI View (HTML/CSS), ViewModel 과 연결(데이터바인딩)됨
- ViewModel : view와 Model 중간다리역할, Vue() 인스턴스의 상태관련 행위로 볼수있다
ex) 디렉티브로 데이터바인딩, vuex 에서 상태제어, emit, props 등
- Model : 백엔드단 실질적인 data객체, ex) DB와의 비즈니스로직 등
MVVM 패턴 장단점
- 장점 : 각각은 의존성이 없어 독립적이고 모듈화하여 개발할 수 있다
- 단점 : ViewModel 설계에 신경써야한다