- 클린 아키텍처
- 계층으로 나누어서 개발하는 아키텍처
- 의존성 방향은 외부 -> 내부
- 내부에서는 외부 계층을 모르도록.
- 구조
- Entities : 비즈니스의 핵심 개념 나타내는 객체
- 예) user, product 클래스
- Use Cases : 사용자가 시스템을 어떻게 사용할 지 정의하는 애플리케이션의 특정 기능
- 예) 회원가입, 상품등록
- Interface Adapters : Use Cases와 Frameworks and Drivers 사이의 중간 역할
- 예) Controller, Presenter, ViewModel
- Frameworks and Drivers : 시스템 핵심 업무와는 상관없는 계층
- 예)Web, Database, UI, 외부 API
- Entities ⊂ Use Cases ⊂ Interface Adapters ⊂ Frameworks and Drivers
- Entities : 비즈니스의 핵심 개념 나타내는 객체
- 장점
- 각각의 계층 서로 수정해도 서로 영향 없음(유지 보수 용이)
- 의존성이 단방향이므로 가짜데이터로 테스트 가능(Mocking)
'TIL' 카테고리의 다른 글
[TIL] 영화 정보 앱 구현 - 클린 아키텍처 (0) | 2025.01.02 |
---|---|
[트러블슈팅] 영화 정보 앱 (0) | 2024.12.30 |
[TIL] git 브랜치 강제 병합 (1) | 2024.12.23 |
[TIL] .env 인식하지 못하는 오류 (1) | 2024.12.23 |
[TIL] Stateful Widget의 LifeCycle (0) | 2024.12.20 |