什么是 MVVM?
MVVM(Model-View-ViewModel)是一种分层架构模式,广泛应用于 Android 开发中,通过分离业务逻辑与 UI 层提升代码可维护性。
- Model:管理数据和业务逻辑(如数据库、网络请求)
- View:负责 UI 展示(XML 布局 + Activity/Fragment)
- ViewModel:桥梁角色,保存 UI 相关数据并暴露给 View
核心优势 ✅
- 解耦:View 与 Model 无需直接通信
- 复用:ViewModel 可跨多个 View 使用
- 测试友好:逻辑层独立于 UI,便于单元测试
- 响应式设计:通过
LiveData
实现数据自动更新
实践要点 🛠️
- 数据绑定:使用
DataBindingUtil
绑定 XML 与 ViewModel - Repository 模式:统一数据源管理(本地/远程)
- 生命周期感知:ViewModel 与 Activity/Fragment 生命周期解耦
- 双向绑定库:如
BindingAdapter
实现自定义绑定逻辑
适用场景 🌐
- 中大型项目(如电商 App、社交应用)
- 需要频繁 UI 更新的场景(如实时数据展示)
- 跨平台开发(通过 Kotlin + Jetpack Compose 实现)