Code-based UI 개발 경험에서 장점과 재렌더링 주의점을 균형 있게 설명한 결
사이드 프로젝트에서 Jetpack Compose로 안드로이드 UI를 처음 코드로만 작성해봤습니다. XML 방식과 비교했을 때 상태와 UI의 분리가 명확해져서, 상태가 바뀌면 UI가 자동으로 재구성되는 구조가 훨씬 직관적이었습니다. UI 로직을 일반 Kotlin 코드로 단위 테스트할 수 있다는 점도 강점이었고, 기존 View 기반에서 인스트루먼테이션 테스트가 필요하던 것을 대체할 수 있었습니다. 다만 러닝 커브가 있어서 초반에 리컴포지션 범위를 잘못 설정해 불필요한 재렌더링이 발생하는 문제를 겪었고, 상태 관리 범위를 의식적으로 좁히는 습관이 중요하다는 것을 배웠습니다. Code-based UI는 선언형 사고방식으로의 전환 비용을 치르면 유지보수성이 뚜렷하게 올라간다는 것을 이 프로젝트에서 확인했습니다.