본문 바로가기

Vue.js

MVVM 패턴

1.모델(Model) 

2.View

3.View Model

 

뷰 모델을 알지만, 뷰 모델를 알지 못함.

뷰 모델모델을 알지만, 모델뷰 모델을 알지 못함.

 

-> 뷰 모델모델로부터 독립적인 형태

=> UI로 부터 비즈니스 로직과 프레젠테이션 로직 분리 가능

 

1. View

  • UI에 관련된 것 (애니메이션과 같은 UI 로직은 포함하되, 데이터 생성과 같은 비즈니스 로직은 포함 X)
  • UI와 UI로직을 다룸

 

2. View Model

  • 뷰가 사용한 베서드와 필드 구현
  • 뷰에게 상태변화 알림
  • 뷰모델과 모델은 일대다 관계 형성
  • 뷰 모델은 뷰가 쉽게 사용할 수 있도록 모델의 데이터를 가공해서 뷰에게 제공
  • 레젠테이션로직과 뷰를 위한 상태를 다룸

 

3. Model

  • 앱에서 사용할 데이터에 관련된 행외와 데이터를 다룸
  • 비즈니스 로직과 데이터를 다룸

MVVM 장점

  • 모델과 뷰모델이 뷰로 부터 독립적이다. -> 뷰 모델과 모델을 독립적으로 개발 가능
  • 개발 기간 동안 개발자와 디자이너가 독립적, 병렬적으로 작업 가능
  • 변화 대응에 용이하다

 

MVVM 단점

  • 거대하고 복잡한 앱을 위해 고안됨
  • 소형 앱에서 사용하게 되면 오버헤드 커짐

'Vue.js' 카테고리의 다른 글

vue의 상태관리 vuex  (0) 2022.07.27