高级软件工程师教会小白的那些事( 四 )

你有没有看过一些代码并觉得很奇怪?那些开发者为什么这样做?这完全说不通啊。

我有幸曾经使用过遗留代码库。其中有类似这样的注释,“在与穆罕默德一起解决了这个问题以后,注释就删掉了。”你在做什么?谁是穆罕默德?

我可以在这里做一个角色转换——想想以后来接手我代码的人们——他们会不会发现它很奇怪。Peer review 部分解决了这个问题。这让我意识到了环境的重要性:要时刻记得我的团队正在工作的环境是什么样的。

如果我忘记了代码,稍后又看到它,而无法重新回想起当时的环境时,我会说:“到底为什么他们会这样做?这讲不通......哦等等,这是我自己写的。”

这就是文档和代码注释发挥作用的地方了。

文档和代码注释

它们有助于保留环境(上下文,语境),以及分享知识。

正如Li在“如何建立良好的软件”中所说的那样,“软件的主要价值不在于生成的代码,而在于产生它的人所积累的知识。”

推荐阅读