Android (Jetpack Compose)
它是什么
Jetpack Compose 是 Android 现代化的声明式 UI 工具包。你不再用 XML 定义布局、再通过 view 引用去修改它,而是编写描述给定状态下 UI 的可组合(composable)Kotlin 函数,框架会在状态变化时重新绘制。它如今是 Google 推荐的原生 Android 界面构建方式,并与更广泛的 Jetpack 库(导航、生命周期、数据)协同工作。
优势
- 声明式且 Kotlin 原生——UI 与逻辑统一在一种语言中,无需 XML 布局。
- 状态驱动的重组(recomposition)让界面自动与状态保持同步。
- 比旧的 View 体系样板代码更少;构建块强大且可组合。
- 内置 Material Design 组件、主题、动画和无障碍支持。
- 可与既有的基于 View 的代码互操作,因此可以渐进式采用。
取舍
- 重组行为可能很微妙;状态放错位置会导致多余的重绘或 bug。
- 需要相对较新的 Android 工具链和最低 SDK 设置。
- 心智模型不同于旧的命令式方式,因此存在学习曲线。
- 一些成熟的仅支持 View 的库仍需要互操作包装层。
最适合
对于希望拥有现代、可维护代码库并快速迭代的全新原生 Android 应用,Jetpack Compose 是正确的选择。它与 Kotlin 和协程天然契合。
Vibe coding 契合度
Compose 很适合 AI 辅助开发,因为可组合函数都是状态的小型纯函数——易于生成、预览,并能孤立地验证。可以让助手把状态从可组合函数中提升出去(值向下传,事件向上传),让每个可组合函数保持职责单一,并用不可变数据来驱动列表。@Preview 注解让你无需运行整个应用就能直观查看生成的 UI,从而收紧反馈回路。
@Composable
fun Counter() {
var count by remember { mutableStateOf(0) }
Column {
Text("Count: $count")
Button(onClick = { count++ }) { Text("Add") }
}
}