핵심 요약
NOL은 SwiftUI와 The Composable Architecture(TCA)를 Presentation Layer로 활용한 클린 아키텍처 도입으로 홈 화면의 UI와 비즈니스 로직을 명확히 분리하고, 확장성과 유지보수성을 크게 높였습니다.
구현 방법
- SwiftUI + TCA를 Presentation Layer로 채택해 단방향 데이터 흐름을 구현
- Home 디렉토리 아래 Domain/Data/Presentation 모듈로 구조화
- 각 섹션별 View/Store/Reducer/State/Action/Dependency로 독립화
주요 결과
- 배포 직전·이후 2주간 비정상 종료가 일정 건수 이하로 유지되며, 크래시가 나지 않는 유저의 비율이 99.99%를 유지
- 신규 섹션 추가 및 기존 로직 변경 시 다른 영역에 미치는 영향 최소화
- 스냅샷 테스트 도입으로 UI 일관성과 QA 효율성 향상

![[Jetpack Compose — Part 2] Compose, 실전에서 빛을 발하다: 코드는 1/4로, 생산성은 4배로! 섬네일](https://miro.medium.com/v2/resize:fit:1024/1*diRzxSehQGYWsFlGDct9sw.png)
