아키텍처 설명 & 선정 기준 정리
아키텍처
- MVVM
- 클린 아키텍처 vs 앱 아키텍처 가이드
- 클린 (유라, 태경)
- data → domain ← ui
- DIP : 의존 관계 역전
- repository interface를 반드시 만들어야 함
- [공식문서] 앱 아키텍처 가이드 (준영)
- data ← domain(optional) ← ui
- github 돌아다니다가 usecase 코드를 보면 대부분 한 줄짜리 코드가 적혀 있음
- 비즈니스 로직에서 중요한 로직은 대부분 서버에 있기 때문에 클라 쪽에서는 필요 없는 경우가 많음
- 이걸로 만들면 나중에 클린으로 바꾸는 게 어렵지 않음 (YAGNI → 필요할 때까지 만들지 않는 방법)
- 클린 아키텍처를 선택하면 → 무조건 Usecase를 거쳐가야 함
- [공식문서] 아키텍처 가이드 선택하면 domain optional로 가져갈 수 있음
아키텍처 관련 참고 자료 - 아키텍처 고민 사항을 정리하면 좋을 듯
https://www.youtube.com/watch?v=3mR8_vT7m1U
https://www.youtube.com/watch?v=CmABbuuxvn0&list=PLsv4T4YK_QiGSwsVq59wVyU7jLkIN7X_d&index=87
https://www.youtube.com/watch?v=4Rk0MR2BVjI&list=PLsv4T4YK_QiHs6Gk7m9P-T7eGqiMU4doL&index=36
[10분 테코톡] 반달의 안드로이드 앱 아키텍처 가이드
https://www.youtube.com/watch?v=jFXo1ngUfqk&list=PLsv4T4YK_QiGSwsVq59wVyU7jLkIN7X_d&index=92&t=837s