12.2 我没有时间写注释
Last updated
Last updated
为注释设置比其他开发任务更低的优先级是很诱人的。如果要在添加新功能和为现有功能写文档之间做出选择,选择新功能似乎是合乎逻辑的。然而,软件项目几乎总是处于时间压力之下,而且总有一些事情看起来比写注释的优先级更高。因此,如果你允许文档被降低优先级,你最终将没有文档。
对这个借口的反驳是讨论的投资心态。如果你想要一个使你能够长期有效地工作的干净的软件结构,那么你必须提前花一些额外的时间,以创建这个结构。好的注释会对软件的可维护性产生巨大的影响,所以在注释上花费的精力会很快得到回报。此外,写注释不需要花很多时间。问问你自己,假设不包含任何注释,你花了多少开发时间在敲代码上(相对于设计、编译、测试等);我怀疑答案是否能超过10%。现在假设你花在写注释的时间和敲代码的时间一样多;这应该是一个安全的上限。在这些假设下,写好注释不会给你的开发时间增加超过10%。拥有良好文档的好处将很快抵消这一成本。
此外,许多最重要的注释是与抽象有关的,例如类和方法的顶层文档。将论证这些注释应该作为设计过程的一部分编写,并且编写文档的行为是改进整体设计的重要设计工具。这些注释会立即得到回报。