
200
자바스크립트 + 리액트 디자인 패턴
하여 모델에 포함된 데이터를 뷰에 표현할 수 있습니다. 앞서 언급했듯이 뷰가 추상화되기
때문에 뷰에 필요한 로직의 양이 줄어듭니다.
그러나 이러한 뷰와 뷰모델 분리의 단점은 둘 사이에 일정 수준의 변환이 필요해 성능에 영향
을 줄 수 있다는 점입니다. 변환의 복잡도 또한 다양할 수 있는데, 단순한 데이터 복사일 수
도 있고 뷰에 표시하기 위해 데이터를 조작하는 복잡한 과정일 수도 있습니다.
MVC
에서는
모델 전체에 바로 접근할 수 있어 변환 조작이 필요하지 않으므로,
MVVM
같은 성능 문제가
발생하지 않습니다.
8.10
최신
MV
* 패턴
Backbone
,
KnockoutJS
와 같이 초기
MVC
와
MVVM
을 구현하는 데 사용되었던 프레
임워크들은 더 이상 인기가 없거나 업데이트되지 않습니다. 이젠 리액트
React
,
Vue
.
js
, 앵
귤러
Angular
, 솔리드
Solid
등 다양한 라이브러리와 프레임워크들이 주로 사용됩니다. 하지만,
Backbone
이나
KnockoutJS
의 관점에서 아키텍처를 이해하는 것은 여전히 중요할 수 있습
니다. 이를 통해 프레임워크의 기원과, 현대에 와서 어떤 점들이 바뀌었는지를 파악할 수 있
기 때문입니다.
MV
* 패턴은 최신 바닐라 자바스크립트로 구현할 수 있습니다. 할 일 목록을
MVC