https://github.com/brownsoo/cleanarchitecture-ios-workout2
마블 빌런 조회 목업 (Clean Architecture + MVVM + UIKit)
https://github.com/brownsoo/cleanarchitecture-ios-workout2
clean-architecture ios mvvm
Last synced: 3 months ago
JSON representation
마블 빌런 조회 목업 (Clean Architecture + MVVM + UIKit)
- Host: GitHub
- URL: https://github.com/brownsoo/cleanarchitecture-ios-workout2
- Owner: brownsoo
- Created: 2023-08-23T15:36:28.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-12-01T09:28:21.000Z (7 months ago)
- Last Synced: 2025-01-26T13:26:58.483Z (5 months ago)
- Topics: clean-architecture, ios, mvvm
- Language: Swift
- Homepage:
- Size: 4.96 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# iOS Clean Architecture Workout 2nd
> 아직 작업 중..
## 마블 빌런 조회 구현
- API : [https://developer.marvel.com](https://developer.marvel.com)
- 페이지 단위 무한 스크롤
- 즐겨찾기 화면
- 간단한 상세 화면## Architecture
- 클린 아키텍트 이론에 기반해 경계 구분.
- 1개 애플리케이션과 2개 프레임워크 프로젝트로 구성 (Modularization)
- MarvelVillain.xcodeproj : 통합 앱 프로젝트
- App : 최종 앱 타겟
- Shared/Shared.xcodeproj : 공용 소스 프레임워크 프로젝트
- Shared : 공용 프레임워크
- VillainDetail.xcodeproj : 빌런 상세 화면 프레임워크, 샘플 앱 프로젝트
- VillainDetailSample : 빌런 상세 화면만 구성한 앱 타켓
- UIKit 기반 뷰 구성, SwiftUI 미리보기 작성
- MVVM 방식 뷰 업데이트 구성
- etag 처리 (304 상태코드로 Network 요청 최소화)
- minimum target : iOS 15.0## Preview
[
](https://vimeo.com/880053093 "iOS앱 연습2-마블빌런즈(어중간)")
---
TODO:
- [x] local caching api reseponses
- [x] 네트워크 레이어 모듈화 - Shared 프로젝트
- [x] 상세화면을 단독 프로젝트로 구성 (모듈화 테스트)
- [x] 화면 라우팅 구성
- [x] 즐겨찾기 화면에서 수정된 정보 반영하기
- [ ] 리포지토리 조회를 동시성 함수로 수정
- [ ] 원격 데이터 먼저 조회하기 (etag 적극활용, 타임아웃 짧게 수정)
- [ ] 원격 데이터와 캐시데이터 구분없이 하나로 변경
- [ ] 네트워크 단절시 상태 표시
- [ ] 검색 기능 추가