1.9 KiB
1.9 KiB
项目架构文档撰写说明
适用文件:doc/项目架构.md。
目录
示例见 项目架构(示例)。
1. 项目目录结构
用目录树写出 src。src/app 展开到每个基础应用目录。src/features 展开到 features/[feature],不写模块内部。
模块内部目录由功能模块文档写。基础应用内部文件由使用示例和数据流体现。
2. 模块定义
先用一段话定义本仓库的模块:src/app/<目录> 是基础应用,src/features/<目录> 是功能模块。
然后分「基础应用」「功能模块」两张表。每行:名称、目录、这个模块做什么。表中的目录与上一节一致,不多出、不漏掉。
功能模块的定义写 application 层的业务,也就是该模块对外提供的用例。不写页面上的操作,不写 ViewModel。ViewModel 是页面业务,放在功能模块文档。模块没有自己的 application 时,写明它不持有独立用例,以及它调用哪个模块的用例。
3. 模块间数据流
只画功能模块之间的业务数据。节点是 home、security、project、editor。箭头文字使用在模块之间传递的方法名或字段名,例如 list、projectId。中文写在图下。
不画基础应用,例如 session、network、db、routes。不画时序,不写类内部的调用步骤。基础应用内部的数据流和时序写在基础应用文档。功能模块内部的时序写在功能模块文档。
一条业务一张图。图下用几句话说明业务数据从哪个功能模块到哪个功能模块。决定下游数据能否继续流动的状态必须画出来。例如 home 先取得 security 的 authenticated,才从 project 取得 projectId,再交给 editor。