docs: harness 工程文档
This commit is contained in:
22
docs/decisions/0001-multi-module-nia.md
Normal file
22
docs/decisions/0001-multi-module-nia.md
Normal file
@@ -0,0 +1,22 @@
|
||||
# ADR 0001:多模块 NIA 架构,feature 单模块(不做 api/impl 拆分)
|
||||
|
||||
- **状态**:已接受
|
||||
- **日期**:2026-09-03
|
||||
|
||||
## 背景
|
||||
|
||||
项目从单模块 Compose 模板起步,需要确立可扩展、可测试、可维护的架构基础。
|
||||
|
||||
## 决策
|
||||
|
||||
采用 Google Now in Android(NIA)风格多模块架构:`app`(组合根)+ `core/*`(共享能力)+ `feature/*`(业务功能)。每个 feature 用**单模块**,不做 nowinandroid 的 `feature:*/api` + `feature:*/impl` 拆分。
|
||||
|
||||
## 理由
|
||||
|
||||
- 依赖方向单向、职责清晰,符合参考项目 `nowinandroid` 与 `app_device` 的共识。
|
||||
- 团队规模小、feature 间共享少,api/impl 拆分会带来额外模块与样板,收益有限。
|
||||
|
||||
## 后果
|
||||
|
||||
- 约定插件 `mcl.android.feature` 预置 feature 通用依赖,新增 feature 只需一个插件声明。
|
||||
- 若未来 feature 间需要稳定 API 边界,再引入 api/impl 拆分(成本可控)。
|
||||
Reference in New Issue
Block a user