201
Chapter 08_
자바스크립트 MV* 패턴
8.10.1
MV
* 패턴과 리액트
분명히 말하자면, 리액트는
MVC
프레임워크가 아닙니다. 리액트는
UI
구축을 위한 자바스
크립트 라이브러리이며, 주로
SPA
Single
Page
Application
개발에 사용됩니다.
리액트는 백엔드에서 전통적으로 구현되고, 사용되는
MVC
패턴과 잘 맞지 않기 때문에
MVC
로 분류되지 않습니다. 리액트는 뷰 계층을 원하는대로 구성하게 해주는 렌더링 라이브
러리입니다. 기존
MVC
와 같이 중앙 제어 역할을 하는 컨트롤러, 혹은 라우터 기능이 포함되
어 있지 않습니다.
리액트는 선언형 프로그래밍 방식을 따릅니다. 즉, 개발자는 애플리케이션이 원하는 상태를
기술하고, 리액트는 그 상태를 기반으로 적절한 뷰를 렌더링합니다. 리액트를
MVC
디자인
패턴에서 사용하지 않는 이유는 리액트에서는 서버가 브라우저에 ‘뷰’를 직접 제공하지 않고,
‘데이터’를 제공하기 때문입니다. 리액트는 이 데이터를 브라우저에서 구문 분석하여 실제 뷰
를 생성합니다. 이러한 관점에서, 리액트를
MVC
패턴의 뷰 (
V
)라고 할 수는 있지만, 전통적
인 의미에서의
MVC
프레임워크는 아닙니다.
다른 관점에서 보면 리액트는
MVC
를 기술에 따라 수평적으로 나누는 대신, 관심사에 따라
수직적으로 나눕니다. 리액트의 컴포넌트는 상태 (모델 ), 렌더링 (뷰), 제어 흐름 로직 (소규
모의 지역화된 컨트롤러 )를 담고 있는 작은 수직 분할형
MVC
로 시작했다고 볼 수 있습니다.
최근에는 많은 ...