어떻게 그리느냐 차이로 푸는 결
둘의 근본 차이는 화면을 어떻게 그리느냐라고 봅니다. 기존 방식은 화면 구조를 미리 만들어 두고, 데이터가 바뀌면 그 요소를 찾아 일일이 고치는 쪽입니다. Compose는 지금 상태면 화면이 이래야 한다고 기술해 두면, 상태가 바뀔 때 알아서 다시 그리는 쪽입니다. 그래서 차이가 나뉩니다. 기존 방식은 찾아 고치는 코드가 늘수록 어디서 안 바뀌었는지 추적이 어렵고, Compose는 그 수작업이 줄어듭니다. 학부 프로젝트에서 상태에 따라 여러 군데를 직접 바꾸다 한 곳을 빠뜨려 화면이 어긋난 경험이 있는데, Compose로 같은 화면을 짜니 그 부류 버그가 줄었습니다. 다만 대가도 있습니다.
상태가 바뀔 때 다시 그리는 범위를 잘못 잡으면 불필요하게 자주 그려져 느려질 수 있어, 그 경계를 신경 써야 합니다. 그래서 신기술이라 덮어놓고가 아니라, 상태에 따라 화면이 자주 바뀌는 화면일수록 이득이 크다고 봅니다.