@ 설명
- Brad Frost 에 의해 소개된 웹 디자인 방법론
- UI 를 구성하는 작은 단위부터 시작하여 점차 복잡한 구조로 만들기
- 컴포넌트를 atom, molecule, organism, template, page의 5가지 레벨로 나눔
@ 구성요소
단계별로 추상적인 것에서 구체화하는 단계
[출처: https://atomicdesign.bradfrost.com/chapter-2/#the-part-and-the-whole]
@ 언제 어떻게 사용?
📢 주의
Organisms 를 구현할 때
- Context 가 존재하는 만큼 해당 컴포넌트 내부의 Sub Component 의 노출 비노출 여부를 Props 로 받아야 함
- ex ) 좋아요, 댓글 아이콘, 댓글 개수, 프로필 노출 유무 등등
- 발생 가능한 문제는 "비슷한 컴포넌트의 중복 생성" 발생 가능
- Solution
- Organisms 를 설계할 때 "합성 컴포넌트"를 이용하기
React 공식 블로그에서 파일구조에 너무 많은 시간 투자 지양
- Solution
- 실제 프로젝트의 요구 사항과 팀의 작업 방식에 맞게 디렉토리 구조를 조정
- ex ) 특정 기능이나 도메인에 따라 파일을 그룹화하는 등의 접근방식 사용
컴포넌트 계층이 깊어지면서 Props Drilling 발생 가능
- Solution
- Context API 사용
- 상태 관리 라이브러리 사용 (Redux, MobX, Recoil)