当前位置: 首页 > news >正文

文档写作理论 - Diátaxis

一、核心概念:四大文档类型

Diátaxis 框架将技术文档划分为四个象限,基于两个维度:

  • 学习(Learning)vs 工作(Working):用户是在学习知识还是解决实际问题
  • 理论(Theory)vs 实践(Practice):内容偏向概念理解还是动手操作

类型定位核心问题用户心态
Tutorials(教程)学习 + 实践“带我体验一次”“我想学这个”
How-to Guides(操作指南)工作 + 实践“帮我解决具体问题”“我需要完成某事”
Reference(参考)工作 + 理论“我需要准确信息”“我需要查某个细节”
Explanation(解释)学习 + 理论“帮我理解原理”“我想知道为什么”

二、四大类型详解与写作规范

2.1 Tutorials(教程)- 入门体验

目的:让初学者通过实际操作获得成就感,建立信心。

特点

  • 面向零基础的初学者
  • 必须是可复现的完整流程
  • 强调学习体验而非生产环境的最佳实践
  • 结果可预测,避免让用户陷入死胡同

结构模板

# 教程标题 ## 你将学到什么 - 完成 [具体成果] - 掌握 [关键概念] ## 前置要求 - 已安装 [软件/环境] - 具备 [基础知识] ## 步骤 1. [具体动作] - [预期结果] 2. [具体动作] - [预期结果] ... ## 验证 [如何确认成功完成] ## 下一步 [推荐阅读/练习]

写作原则

  • ✅ 使用命令式:“点击按钮”、“输入命令”
  • ✅ 每个步骤立即产生可见反馈
  • ❌ 不解释原理(留在 Explanation 中)
  • ❌ 不提供替代方案(保持路径唯一)

2.2 How-to Guides(操作指南)- 问题解决

目的:帮助用户完成特定任务,解决实际问题。

特点

  • 面向已具备基础知识的用户
  • 聚焦单一目标,步骤导向
  • 假设用户知道为什么要做,只告诉怎么做
  • 可接受多种实现方式

结构模板

# 如何 [完成任务] ## 目标 [一句话描述要达成的结果] ## 前置条件 - [环境/权限要求] - [依赖项] ## 步骤 1. [动作] 2. [动作] ... ## 故障排除 | 问题 | 原因 | 解决方案 | |------|------|----------| | ... | ... | ... | ## 相关操作 - [链接到其他 How-to]

与 Tutorials 的区别

TutorialsHow-to Guides
学习导向任务导向
假设零知识假设有基础
路径唯一可有多种方案
强调体验强调效率

2.3 Reference(参考)- 准确信息

目的:提供精确、完整的技术描述。

特点

  • 描述性而非指导性
  • 结构一致、可预测
  • 覆盖所有选项/参数
  • 与代码/实现严格同步

适用内容

  • API 文档
  • 配置文件说明
  • CLI 命令参数
  • 错误代码列表

结构模板(以 API 为例):

# API 参考 ## [Endpoint Name] `METHOD /path/to/endpoint` ### 描述 [一句话功能描述] ### 请求参数 | 参数 | 类型 | 必需 | 描述 | |------|------|------|------| | ... | ... | ... | ... | ### 响应 #### 成功 (200) ```json { "field": "type" }
错误码
状态码含义解决方案
400参数错误检查请求体格式

示例

[完整请求/响应示例]

**写作原则**: - ✅ 机器可读的结构(便于自动生成) - ✅ 版本信息明确标注 - ❌ 不包含使用场景说明(放在 How-to 中) - ❌ 不解释设计原理(放在 Explanation 中) --- #### 2.4 Explanation(解释)- 深度理解 **目的**:帮助用户理解概念、原理和背景知识。 **特点**: - **理论性**、论述性 - 回答 **"为什么"** 和 **"如何运作"** - 建立**概念之间的联系** - 不教授具体操作 **适用主题**: - 架构设计决策 - 算法原理 - 最佳实践背后的原因 - 历史背景和演进 **结构模板**: ```markdown # [概念名称] ## 概述 [是什么 + 为什么重要] ## 核心原理 [详细解释工作机制] ## 设计考量 [为什么选择这种方式] ## 与其他方案的比较 | 方案 | 优点 | 缺点 | 适用场景 | |------|------|------|----------| | A | ... | ... | ... | | B | ... | ... | ... | ## 实际影响 [对开发/使用的影响] ## 延伸阅读 [相关 Explanation 文章]

写作原则

  • ✅ 多角度阐述(历史、技术、业务)
  • ✅ 使用类比和图示
  • ✅ 承认复杂性和权衡
  • ❌ 不包含操作步骤
  • ❌ 不罗列参数细节

三、落地实施:文档架构设计

3.1 网站/文档结构建议

docs/ ├── tutorials/ # 入门教程 │ ├── getting-started/ │ ├── build-your-first-app/ │ └── ... ├── how-to/ # 操作指南 │ ├── deploy/ │ ├── configure/ │ ├── troubleshoot/ │ └── ... ├── reference/ # 参考文档 │ ├── api/ │ ├── cli/ │ ├── configuration/ │ └── ... └── explanation/ # 概念解释 ├── architecture/ ├── design-patterns/ └── ...

3.2 导航设计原则

用户意图入口设计
“我是新手,想快速上手”首页 → Tutorials → Getting Started
“我要部署到生产环境”首页 → How-to → Deploy
“我需要查某个 API”顶部搜索 + Reference 快速入口
“我想理解工作原理”Explanation 专题板块

3.3 交叉引用策略

在每种类型文档中,明确引导用户到其他类型:

<!-- 在 Tutorial 结尾 --> > 📚 **想深入了解原理?** 阅读 [架构设计说明](/explanation/architecture) > 🛠️ **准备投入生产?** 查看 [部署指南](/how-to/deploy) <!-- 在 How-to 开头 --> > 💡 **不熟悉此功能?** 先完成 [入门教程](/tutorials/getting-started) > 📖 **需要参数详情?** 查看 [API 参考](/reference/api) <!-- 在 Reference 中 --> > 🎓 **不知道如何使用?** 参考 [操作指南](/how-to/) > 🤔 **想了解设计原因?** 阅读 [技术决策](/explanation/design-decisions)

四、内容生产工作流

4.1 内容规划矩阵

在规划文档时,先确定内容类型:

内容想法类型判断原因
“5分钟快速开始”Tutorial面向新手,完整体验
“如何配置 SSL”How-to具体任务,目标明确
“HTTP 状态码列表”Reference准确信息,快速查阅
“为什么选择微服务”Explanation理论论述,深度理解

4.2 写作检查清单

Tutorial 检查清单

  • 从完全零基础开始
  • 每个步骤有明确的预期结果
  • 用户能在 15-30 分钟内完成
  • 不包含"可选步骤"
  • 结尾有成功验证方法

How-to 检查清单

  • 标题以"如何"开头
  • 前置条件明确
  • 步骤可跳过已掌握的部分
  • 包含故障排除
  • 提供替代方案(如适用)

Reference 检查清单

  • 结构一致(与其他参考文档)
  • 信息完整(无遗漏参数/选项)
  • 与代码版本同步
  • 机器可解析(便于自动生成)

Explanation 检查清单

  • 回答"为什么"而不仅是"是什么"
  • 使用具体例子说明抽象概念
  • 承认复杂性和权衡
  • 不混入操作指令

五、工具与实践

5.1 推荐工具链

用途工具说明
静态站点生成MkDocs、Docusaurus、VitePress支持 Markdown,主题丰富
版本控制Git + GitHub/GitLab文档即代码,PR 审核
自动化部署GitHub Actions、Vercel提交即发布
搜索Algolia DocSearch全文检索
API 文档Swagger/OpenAPI、Redoc自动生成 Reference

5.2 MkDocs 配置示例(Material 主题)

# mkdocs.ymlsite_name:我的文档theme:name:materialfeatures:-navigation.tabs-navigation.sections-navigation.expand-search.highlightnav:-首页:index.md-Tutorials:-tutorials/getting-started.md-tutorials/advanced-features.md-How-to Guides:-how-to/deploy.md-how-to/configure.md-Reference:-reference/api.md-reference/cli.md-Explanation:-explanation/architecture.md-explanation/design-patterns.mdplugins:-search-minify

5.3 团队协作规范

  1. 文档评审:PR 模板中要求标注文档类型

    ## 文档类型 - [ ] Tutorial - [ ] How-to Guide - [ ] Reference - [ ] Explanation ## 检查清单 [对应类型的检查项]
  2. 版本管理:Reference 必须与代码版本严格对应,其他类型可相对独立更新

  3. 内容重用:使用 Markdown 的 include 功能提取公共片段

    --8<-- "common/prerequisites.md"

六、常见错误与纠正

错误症状纠正方法
Tutorial 混入概念解释教程过长,用户失去耐心将原理移到 Explanation,Tutorial 只保留"做什么"
How-to 变成 Tutorial步骤过于详细,限制过多允许用户跳过已知步骤,提供多种方案
Reference 包含使用建议文档与代码不同步使用说明移到 How-to,Reference 保持纯描述
Explanation 变成步骤清单理论文章充斥命令行抽象层次提升,聚焦"为什么"
类型混杂的"大杂烩"文档用户找不到需要的信息拆分为独立文档,明确分类

http://www.jsqmd.com/news/672685/

相关文章:

  • 不只是安装:用Docker在Ubuntu 20.04上快速部署可复现的UHD 3.15 + GNU Radio 3.8开发环境
  • 2026执医技能备考:模拟培训机构推荐指南 - 医考机构品牌测评专家
  • 承包荒山种好树 林权受损无说法
  • 谷歌关键词搜索怎么做上去?拒绝无效发外链!3招提升高转化核心词排名
  • ESP32离线语音识别:如何在5分钟内构建隐私保护的本地语音交互系统
  • OpenPLC Editor:开源PLC编程工具的终极指南
  • **玩转 Playwright:从入门到自动化测试实战详解**在现代前端开发中,**端到端(E2E)
  • 4月20日
  • Python的__getattribute__中间件
  • 2026卫生中级职称考试通关秘籍:五家押题准培训机构测评榜 - 医考机构品牌测评专家
  • 2026全球EOR权威榜——SmartDeer引领中企出海 - 资讯焦点
  • Java的java.lang.foreign不同场景
  • 2026 年产品经理必备 AI 工具横评:哪些工具真正提升了 PM 效率
  • 私有化部署即时通讯平台推荐:BeeWorks 定义 2026 安全新标准
  • 从 0 到 1:将 QQ 打造为 OpenClaw 的“一等公民”(全双工避坑指南)
  • 2026药学主任药师考试名师推荐,口碑师资盘点! - 医考机构品牌测评专家
  • Cortex-M4/7寄存器精讲:从加载-存储架构到中断嵌套的实战解析
  • 告别PDF中文问号!JasperStudio字体配置保姆级教程(含TTC转TTF工具)
  • 完全免费的aibiye等9款查重工具,智能改写降重功能让学术文本更专业流畅
  • 2026年2月深圳叉车TOP6推荐:智能化物流设备选型指南 - 资讯焦点
  • 5分钟掌握小说下载器:免费离线阅读的终极解决方案
  • 深度解析:数据库 OID 与 ROWID 原理、用法与实战避坑
  • EasyExcel导出实战:如何优雅地为300+城市列表添加下拉选择(附完整可运行代码)
  • 2026年度湖北精密空调行业技术实力推荐 - 资讯焦点
  • Unreal是如何驾驭内存的 第14章 资产系统——UPackage、.uasset与Cook流程
  • Windows 11 下 VirtualBox 启动报错 (VERR_NEM_NOT_AVAILABLE) 的深度排查与修复指南
  • ARM PMUv2和PMUv3到底有啥区别?给嵌入式开发者的避坑指南与迁移实践
  • 2026 年私有化企业 IM 推荐:BeeWorks 引领安全可控新范式
  • SAP ABAP调试实战:七种高效定位错误消息的策略解析
  • 从‘滞环’到‘SVPWM’:聊聊异步电机FOC控制里,发波方式到底该怎么选?(附避坑建议)