title: "技术文档写作指南" date: 2022-08-21T15:29:00+08:00 description: "谷歌技术文档写作指南" categories: [技术规范] tags: [写作, 技术文档]
本文内容摘录自 Technical Writing (谷歌技术文档写作指南)的第一部分。
本文适用于想要提高技术文档写作、技术领域日常沟通能力的读者,对于一些商务的、非文学性质的英语办公场景沟通,也能起一定帮助作用。
阅读过本文的读者可以:
关于缩写:第一次出现要用粗体写全称并用括号指明缩写,之后的文章中不要反复混用全称和缩写。
例如:
This document is for engineers who are new to the Telekinetic Tactile Network (TTN) or need to understand how to order TTN replacement parts through finger motions.
如果一个术语出现频率不高,请不要使用缩写。
使用缩写的情况有:1. 缩写明显更简短;2. 该术语出现频率很高。
谨慎使用代名词(It,they,that 等)。
类比计算机编程语言:
缩写 = 对术语的一层抽象。读者需要花费更多脑力去把它展开成对应的名词。
代名词 = 指针。它容易引起歧义,所以要避免在读者大脑中引起「空指针」错误。
选择准确、有力、具体的动词。减少不精确的、软弱的或通用的动词。
错误的例子:
is,are,occur,happen
Be 动词和通用动词可以用,但它们通常是一些不良写作习惯的信号,如
减少 there be 句式,把 there be 句式中的主语和动词提炼出来
错误的例子:
There is no guarantee that the updates will be received in sequential order.
应改为:
Clients might not receive the updates in sequential order.
尽量少用或不用形容词和副词,因为这些词汇过于主观。
把句内列举的项(embedded list)转换成无序列表,如:
例如:
The llamacatcher API enables callers to create and query llamas, analyze alpacas, delete vicugnas, and track dromedaries.
应换成:
The llamacatcher API enables callers to do the following:
- Create and query llamas.
- Analyze alpacas.
- Delete vicugnas.
- Track dromedaries.
保持列表项之间的平行关系(避免把不同层级的东西混在一列)。
在使用有序列表时,用一个命令式动词开头,例如:
- Download the Frambus app from Google Play or iTunes.
- Configure the Frambus app's settings.
- Start the Frambus app.
只有列表每一个项都是句子时,才使用首字母大写和句号,否则不需要。
好的文档 = 读者要完成任务所需的知识和技能 - 读者已有的知识和技能
确定读者需要什么,读过文档能学到什么。比如在设计规范开头这样写:
After reading the design spec, the audience will learn the following: …
满足读者:
按读者需要组织文档格式。
好的大纲举例:
- Overview of the algorithm
- Compare and contrast with quicksort, including Big O comparisons
- Link to Wikipedia article on quicksort
- Optimal datasets for the algorithm
- Implementing the algorithm
- Implementation in pseudocode
- Implementation tips, including common mistakes
- Deeper analysis of algorithm - Edge cases - Known unknowns
这部分原文涉及英文标点符号的用法,大部分和汉语规则近似,略过不译。以下是我在排版方面的经验: 大多数中国人对英文排版易错的地方是空格的滥用。可以参考这篇文章: 英文标点要如何排版?
概括起来:
, ; : . ? !
这些符号后加空格() '' ""
这些成对的符号左右加空格,内部不加空格/ - _
不加空格