用途:为 Android Kotlin 应用提供架构约束与实现范式,强制 Clean Architecture、MVVM/MVI 与单向数据流,统一状态、事件与副作用的管理方式。
主要能力:定义 MVI 契约,要求 UiState 为不可变数据类,UiEvent 与 UiEffect 使用 sealed interface;ViewModel 通过 MutableStateFlow 暴露 StateFlow 状态,通过 Channel 发送一次性副作用,状态变更只允许使用 _state.update { it.copy(...) }。提供 UseCase 使用规则:跨多个 ViewModel 共享逻辑、多仓库编排、需要独立单元测试时使用 UseCase;单行仓库委托、单 ViewModel 单仓库、无额外规则的 CRUD 可跳过。给出大型应用的模块布局:app、feature-<name>(presentation/domain/data)、core(core-ui、core-domain、core-testing),并规定 feature 模块之间不得相互依赖,只能依赖 core-* 与 domain 契约。列出架构反模式及修复方式,如禁止 _state.value = newState、God ViewModel、在 composable 参数中传 ViewModel、领域模型带 @Entity、在 init 中直接收集 Flow 而不使用 stateIn。
使用方式:按需阅读配套参考文件,包括 ../../references/01-architecture.md(完整 MVVM/MVI 模式、容器与内容 composable)、04-coroutines-flow.md(StateFlow、Channel 副作用、stateIn)、05-hilt-di.md(@HiltViewModel、仓库装配)、06-room-db.md(仓库与 Room 离线优先)。
适用场景:Android Kotlin 应用尤其是采用 Compose 的中大型项目,需要统一架构约定、拆分模块、规范状态与副作用处理时。
限制:资料未提供安装命令、版本要求、收费信息与具体平台支持范围;内容以架构约定与代码范式为主,实际落地需结合项目情况。