"중복된" 컴포넌트 작성이 아닌, 컴포넌트 내 "점점 늘어나는 조건 처리" 없이 하나의 컴포넌트로 여러 layout들을 관리하며 동시에 코드의 가독성을 확보하고 원활한 유지 보수를 할 수 있는 컴포넌트를 설계하기 위한 내용입니다. 디자인 시안을 전달 받고 컴포넌트를 설계하는 과정 중, 아래와 같은 디자인 시안을 마주하게 되었습니다. 아래의 디자인 샘플들은 거의 유사한(혹은 동일한) 모델을 기반으로 화면을 구성하는데, 화면 내 표시되는 곳에 따라 레이아웃의 세밀한 차이가 있습니다. cf) 컴포넌트 예시 구현 초기 단계에서는 이러한 컴포넌트를 구현하기 위해 아래와 같은 생각을 하였습니다. '하나의 컴포넌트 내에서 어떤 화면인지를 알려주는 props를 넘겨 if-else 와 같이 조건을 구분하여 화면을 렌더링..