Compose와 View가 함께 있는 화면을 다루는 법

Compose 마이그레이션에서는 View와 Compose가 함께 있는 시간이 생각보다 길다. 이 구간을 불편하다고만 보면 구조가 지저분해지지만, 명확한 interop 규칙을 두면 점진 전환의 안전장치가 된다.

이 글은 원문을 그대로 옮긴 번역이 아니라, 실제 Android 프로젝트에 적용할 때 무엇을 남길 수 있을지 정리한 기록이다.

참고한 글

읽고 남긴 포인트

  • ComposeView를 어디에 두는지가 화면 책임의 경계를 결정한다.
  • View lifecycle과 Compose composition lifecycle을 함께 이해해야 한다.
  • 상태 소유권을 View와 Compose가 동시에 갖지 않도록 해야 한다.

프로젝트에 적용한다면

  • ComposeView를 사용하는 Fragment에서는 dispose 전략을 명확히 지정한다.
  • ViewModel은 View와 Compose 양쪽에서 같은 UI State를 읽게 한다.
  • 한 화면 안에서 같은 이벤트를 두 체계가 중복 처리하지 않게 한다.

정리

interop은 임시 코드처럼 보이지만, 실제 제품에서는 꽤 오래 남는다. 그래서 처음부터 읽기 쉽게 만드는 편이 낫다

함께 읽기