관리 메뉴

개발노트

Vue Js 시작하기에 앞선 개요 본문

web/vue.js

Vue Js 시작하기에 앞선 개요

YoonGwon 2021. 10. 5. 14:24

VueJS란?

- React, Angular 와 같은 JavaScript 프레임워크컨트롤러 대신에

   뷰 모델을 가지는 MVVM(Model-View-ViewModel) 패턴을 기반으로 디자인되었으며,

   재사용이 가능한 UI들을 묶어서 사용할 수 있습니다.

 

특징

  • MVVM 패턴을 사용합니다.
  • Virtual DOM의 사용합니다.
  • Angular, React에 비해 매우 작고 가벼우며 복잡도가 낮습니다.
  • Template과 Componenet를 사용하여 재사용이 가능한 사용자 인터페이스를 묶고 View Layer를 정리하여 사용합니다.

 

Vue가 무엇이 좋은가?

  • 다른 프레임워크보다 비교적 쉽게 배울수 있으며, 빠르게 적용할 수 있습니다.
  • React와 Angular의 장점을 갖고있어 성능이 우수할 뿐만 아니라 가볍고 빠릅니다.
  • 제공해주는 Vue의 기본문서는 상당히 좋습니다.
  • 싱글파일 컴포넌트 개발이 가능합니다.

아래는 렌더링 성능을 알아보기위해 React와 비교해보았습니다. 2014 년 MacBook Air의 Chrome 52에서 실행 된 숫자입니다.
(출처 : https://kr.vuejs.org/v2/guide/comparison.html)

 

  Vue React
Fastest 23ms 63ms
Median 42ms 81ms
Average 51ms 94ms
95th Perc. 73ms 164ms
Slowest 343ms 453ms

 

 

 

MVVM 패턴



Mode - View - ViewModel의 줄임말으로 로직과 UI의 분리를 위해 설계된 패턴입니다.
웹페이지는 돔과 자바스크립트로 만들어지게 되는데 돔이 View 역할을 하고, 자바스크립트가 Model 역할을 합니다.
뷰모델이 없는 경우에는 직접 모델과 뷰를 연결해야 합니다.
그러나 뷰모델이 중간에서 연결해 주는 것이 MVVM 모델입니다.

 

컴포넌트(Component)


화면에 비춰지는 뷰의 단위를 쪼개어 재활용이 가능한 형태로 관리하는 것이 컴포넌트입니다.
Vue에서, 컴포넌트는 미리 정의된 옵션을 가진 Vue 인스턴스입니다.
전역 등록과 지역 등록 존재합니다.

Vue는 재사용이 가능한 컴포넌트로 웹 페이지를 구성할 수 있습니다.
확장자가 .vue인 단일 파일에 HTML, 자바스크립트, CSS 코드로 구성하여 사용합니다. 

생명주기



생명주기는 크게 Creation, Mounting, Updating, Destruction 으로 나눌 수 있습니다.
- Creation : 컴포넌트 초기화 단계
- Mounting : Dom 작성 단계
- Updating : 상태 변화로 인한 렌더링 단계
- Destruction : 소멸 단계

 

Vue 인스턴스


new Vue로 선언하여 만들어진 객체를 vue 인스턴스라고 부릅니다.

  • el : 태그에 지정한 ID, 클래스명, 태그명으로 해당 태그와 vue 인스턴스를 연결하는 옵션입니다.
  • data : key와 value를 지정하는 json형식으로 데이터 입력 옵션입니다.
  • computed : getter/setter를 지정하는 옵션입니다.

 

참조 : https://wikidocs.net/17701

728x90