핵심 요약
티빙의 안드로이드 팀이 레거시 코드를 Compose와 Android Modern Architecture로 마이그레이션해 모듈화와 재사용성, 테스트 가능성을 크게 개선했다.
주요 경험
- 레거시의 예측 가능성 강화를 목표로 모듈화와 의존성 주입(DI)을 도입했다.
- DialogFragment와 BottomSheetDialogFragment를 시작점으로 재사용 가능한 UI 컴포넌트로 마이그레이션했다.
- 티빙톡을 모듈로 분리하고 의존성을 단방향으로 설계해 다른 모듈 영향 없이 독립적으로 동작하도록 했다.
얻은 인사이트
- 도메인 지식을 파라미터로 주입하는 선언형 설계가 부수효과를 예측 가능하게 만들었다.
- 컴포넌트 재사용성과 테스트 커버리지가 크게 늘어나 신규 기능 도입 속도가 빨라졌다.
- 모듈 간 의존성의 단방향 설계가 유지보수성과 안정성에 기여했다.
![[Jetpack Compose — Part 2] Compose, 실전에서 빛을 발하다: 코드는 1/4로, 생산성은 4배로! 섬네일](https://miro.medium.com/v2/resize:fit:1024/1*diRzxSehQGYWsFlGDct9sw.png)
