Jetpack Compose versus the older Android View system
Android's original UI toolkit, built around XML layouts and imperative View updates, is still present in many existing codebases and still fully supported, but Compose has become the framework we default to for new screens. Describing a screen as a function of its state removes an entire category of bug where the displayed UI and the underlying data quietly disagree, since Compose recomputes the affected UI from state automatically instead of relying on a developer to update every view by hand.
For an existing View-based app, we do not recommend a wholesale rewrite. Compose interoperates with the View system directly, so new screens go in Compose while existing screens keep working, and a team migrates opportunistically as screens come up for other changes anyway.








