LogoBricksmith

Clean Architecture

Feature 브릭의 Clean Architecture 패턴 설명

Clean Architecture#

모든 feature 브릭은 Clean Architecture (Vertical Slice) 패턴을 따릅니다.

레이어 구조#

┌─────────────────────────────────────┐
│        Presentation Layer           │
│   BLoC (Event/State)Page/Widget  │
├─────────────────────────────────────┤
│          Domain Layer               │
│  EntityUseCaseRepository I/F  │
├─────────────────────────────────────┤
│           Data Layer                │
│   Repository ImplAPI/DB/Cache    │
└─────────────────────────────────────┘

Domain Layer#

  • Entity: Freezed immutable 데이터 모델
  • UseCase: 단일 비즈니스 로직 (Either<Failure, T> 반환)
  • Repository Interface: 데이터 접근 추상화

Data Layer#

  • Repository: 인터페이스 구현체
  • OpenAPI Mixin: REST API 연동
  • Mock Factory: 테스트용 Mock 데이터
  • Cache: Cache-First 전략

Presentation Layer#

  • BLoC: Event-driven 상태 관리
  • Page: 화면 컴포넌트
  • Widget: 재사용 가능한 UI 요소

Backend Layer#

  • Endpoint: Serverpod CRUD API
  • Service: 비즈니스 로직
  • Model: .spy.yaml Entity/DTO 정의
  • Validation: 입력 검증