朝闻道,夕死可矣。 ————《论语·里仁》
一、技术文档
- 项目文档:用于开启新项目的整体概要文档,说明项目背景、成员、依赖关系、项目整体排期、里程碑、 模块概述、系统交互、
- 部署文档:介绍网站或系统如何进行部署,搭建运行环境,通常需要说明代码的Git仓库位置、数据库结构、Nginx/Apache配置、计划任务配置、其他配置,是否需要CDN或HTTPS等,以及注意事项。
- 接口文档:针对每个API接口提供的文档,说明接口地址,调用方式,接口参数,返回结构,异常情况等。
- 模板文档:提供给前端使用的模板文档,说明每个网站页面会存在哪些变量、类型是什么、以及处理逻辑,方便前端进行渲染、展示和交互。
- 设计文档:针对系统、子系统或某个功能模块的设计说明,从技术架构到软件设计,到数据库建模,以及核心技术的介绍,性能分析等,面向对象是相同专业的专业人员。
- 开发文档:针对每个开发需求而编写的文档,说明需求的背景、当前需求的实现思路,并记录这个需求所产生的接口文档、模板文档、数据库变更、上线待办清单、代码仓库和相应的开发分支,以及一些注意事项,方便需求在开发过程中,以及在测试联调过程中,有很好的文档进行备忘、沟通和回顾。如果有依赖底层或第三方的接口,也应一并补充。若有外部调用方,也应进行登记。
- 故障文档:当出现线上故障时,处理完毕后,应编写故障复盘文档,进行原因分析、思考改进措施、贴出关键的代码、交待故障发生以及处理的历史过程,方便团队进行回顾、学习和避免类似问题再次发生。
- 分享文档:对新技术或已有技术的技术分享,例如:如何利用docker部署本地开发环境。
- 新人文档:为新加入团队成员而编写的新人指引教程,包括系统介绍、应该开通哪些账号、遇到的一些常见问题、入周第一周应该做什么、开发环境(包括扩展)、通用代码、服务器环境、关键代码描述
- 系统负责人文档:日常紧急任务或假期期间
- 数据库文档:数据库创建规范、使用规范、系统数据库字典等
- 版本文档:系统发布版本记录
- 需求文档:产品PRD文档
- 代码规范:代码评审标准、评审记录、优秀代码案例等
二、如何书写
TODO