카카오 'Daum 검색 - 이미지 검색' API를 이용해 이미지 검색 앱을 만들었습니다.
- getx를 이용하여, 상태 관리, 네비게이션, DI 관리에 사용했습니다.
- [클린 아키텍처] 각 계층을 분리하여 의존성을 낮췄습니다.
- mvvm 디자인 패턴을 따라가도록 만들었습니다.
Android | iOS | |
---|---|---|
search (call API) |
![]() |
![]() |
paging | ![]() |
![]() |
error | ![]() |
![]() |
/data
/models
/repositories
/sources
/domain
/repositories
/usecases (생략)
/presentation
/features
/photo_detail
/photos
/utils
main.dart
-
Flutter Clean architecture
: 3가지 모듈로 나누어 바라봅니다.Data
-Domain
-App(Presentation)
- Data: Repositories, source(call API)
데이터 처리
- Domain: Repositories(interface), usecases, entities
비지니스 로직
- Presentation: pages, state(model) ←→ presenter(controller)
- Data: Repositories, source(call API)
-
- 상태 관리, 네비게이션, DI 관리에 사용
debounce
Worker를 이용해 1분간 검색 타이핑이 멈출 경우에만 검색이 되도록 설정
-
http api 통신
-
에러 핸들링
-
페이징 방식
-
네트워크 이미지 캐싱
-
테스트 코드
-
Sliver Widgets