Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
Tags
- java 콘솔 출력 차이
- printf
- Flutter
- develop
- nodejs
- lifecycle
- DART
- 엡
- 앱심사
- LLM
- Clean Architecture
- java
- JQ
- 단축키
- JS
- riverpod
- println
- unity
- firebase
- 자바 출력 방식
- npm
- react
- 자바스크립트
- abap
- UI/UX
- ListView
- 배포
- 자바 포맷 출력
- java 출력
- scss
Archives
- Today
- Total
guricode
[Flutter] Clean Architecture란? 본문
Clean Architecture는 비즈니스 로직(Domain)을 UI나 데이터 소스와 분리해
의존성이 한 방향으로만 흐르도록 만든 구조다.
Flutter에서는 Presentation–Domain–Data 세 레이어로 나누어
ViewModel이 UseCase를 호출하고, Repository를 통해 Firestore나 API에 접근한다.
[Presentation Layer] → UI, ViewModel, Provider 등
[Domain Layer] → Entity, UseCase (비즈니스 로직)
[Data Layer] → Repository, DataSource (API, DB, Firebase 등)
- UI(View)는 UseCase만 호출
- UseCase는 Repository 인터페이스만 알고 있음
- 실제 구현(Firebase)은 Data Layer에 위치
클린 아키텍쳐는
유지보수성(UI,DB,프레임워크가 바뀌어도 비즈니스로직은 그대로 유지),
테스트용이성(Domain로직이 외부 의존성 없이 독립되어 단위테스트 가능),
확장성(Firebase -> restAPI,SQLITE로 쉽게 교체 가능),
의존성 제어(상위 계층은 하위계층 구현을 모르고 인터페이스에만 의존),
팀 협업 효율성(UI담당자와 로직 담당자가 독립적으로 개발 가능)
에 있어서 장점이 있다.
'앱 > Flutter&Dart' 카테고리의 다른 글
| [Flutter]AOT와 JIT 컴파일러 (0) | 2025.10.20 |
|---|---|
| [Flutter] 비동기 처리하는 여러가지 방법 (0) | 2025.10.20 |
| [Flutter] Isolate란? (0) | 2025.10.20 |
| [Flutter] 네이티브 기능과 연결하기 위한 패키지 사용 경험 (0) | 2025.10.20 |
| [Flutter]무한 스크롤을 구현하는 방법,당겨서 새로고침 기능을 구현하는 방법 (0) | 2025.10.20 |