리액트 디자인 패턴 (폴더구조 체계화)
컴포넌트를 쪼개는 방식에 정해진 표준이 있는 것은 아니다. container/presenter 패턴, atomic 패턴 등 여러가지 방법이 있으며 회사나 팀마다 다른 방식을 사용한다. 오늘은 대중적인 디자인 패턴 중 하나인 container / presenter 패턴에 대해 알아보자.
Container / Presenter
Container : 순수 스크립트 영역으로 페이지의 동작을 담당한다.
Presenter : JSX로 작성된 UI 등 시각적으로 보이는 영역을 담당한다.
한 페이지 컴포넌트를 기능별로 쪼갠 뒤 import / export 로 해당 function을 불러와서 연결해주면 된다. 이 때 import 하는 쪽이 부모, export 하는 쪽이 자식 컴포넌트가 된다. 리액트는 단방향 데이터 구조를 가지고 있기 때문에 함수나 변수를 부모 > 자식 방향으로만 전달해줄 수 있다. (props 사용)
단방향 / 양방향 데이터 흐름에는 각각 장단점이 있다. 리액트는 단방향 구조이기 때문에 흐름을 파악하기 쉽고 유지보수가 편하다. ( 양방향 흐름을 가지고 있는 예시에는 앵귤러가 있다.)
'React, Next.js' 카테고리의 다른 글
[React] 리액트의 핵심 2, Props (0) | 2022.01.20 |
---|---|
[React] 리액트의 핵심, State (with useState) (0) | 2022.01.20 |
[Next.js] 정적 라우팅과 동적 라우팅 | Static-Routing and Dynamic-Routing (0) | 2022.01.18 |
[React] Fragment (0) | 2022.01.17 |
[React] export와 export default (0) | 2022.01.17 |