读书笔记

(1)整体来说,这本书到底在谈些什么?

本书围绕“注重实效”讲述了关于编程的各种话题,个人责任、拽光弹开发、调试策略、元程序设计、按合约设计、重构、无情的测试,等等。作者认为注重实效的程序员的特征是程序员在处理问题、寻找解决方案时的态度、风格、哲学,他们能够超越直接的问题去思考,总是设法把问题放在更大的语境中,总是设法注意更大的图景。

(2)作者细部说了什么,怎么说的?

作者在短短的300多页的一书中论述的内容非常多,共8章,论述了程序员如何实现“注重实效”。作者论述的逻辑一般是首先解释所提及主题的关键概念,在论述每个小主题时,作者通常(不是所有)列出一个相关的名言警句。例如谈到“需求之坑”时,有“完美,不是在没有什么需要增加,而是在没有什么需要去掉时达到的–Antoine de St.Exupery, Wind, Ssand, and Stars. 1939”。作者会在文中特别给出一些提示,帮助你更好掌握作者的思路,然后会给出一些目标(即建议)指导你怎么在工作中实践作者所提的观点或解决存在的问题。

在书的最后,作者总结出书中的提示和检查清单,在索引“注重实效的程序员之快速参考指南”列出。很容易去查找,看这些就可以复习书中方法和观点,很方便平时温故而知新。

(3)这本书说的有道理吗?是全部有道理,还是部分有道理?

书中很多方法对我来说是很有帮助的,我完全可以根据里面所说的一些建议进行实践,提高自己的编程能力。书本里直接列出了一些提示,目标和挑战,这都是可以直接实践的。例如在注重实效的哲学谈到了定期为你的知识资产投资,列出了这几个目标:

  • 每年至少学习一种新语言。持续投入十分重要,一旦你熟悉了某种语言或新技术,继续前进,学习另一种。
  • 每季度阅读一本技术书籍。
  • 也要阅读非技术书籍。
  • 上课。在本地的学院或大学、或是将要来临的下一次会展上寻找有趣的课程。
  • 参加本地用户组织。
  • 试验不同的环境。
  • 跟上潮流。
  • 上网。想要了解某种新语言或其他技术的各种特性?要了解其他的相关经验,了解他们使用的特定行话,等等,新闻组是很好的方式,上网冲冲浪,查找论文、商页站点、以及其他任何你可以找到的信息来源。

由于我缺乏实践经验,很难鉴别书中所论述的一些我不熟悉的方法是否有效。在今后的工作实践中再来领悟肯定有新的收获。

(4)这本书跟你有什么关系?

即将毕业,我很快将会开始我的程序员生涯,作为编程初学者,我可以书中了解到各种编程技术和方法,根据书中的指引拓展我的编程生涯。

文档生成工具

阅读这本书了解到了写程序文档也是很重要的,介绍了文本操纵的很重要意义。里面提到了作者常用perl语言编写脚本来操纵文本,例如格式化书本、生成程序的HTML文档。我对此还是感到比较新奇,因为从未使用过这样的工具。去网上搜索了一下,果然搜出一大批文档生成工具,例如doxygen,找到两篇博客很好地介绍了相关的文档生成工具:

告别手写 API文档生成工具推荐

Doxygen给C程序生成注释文档

使用文档生成工具的好处是可以更快速的实现文档随代码的变化而自动更新,免去很多反复修改文档的繁琐重复工作。

注重实效的程序员之快速参考指南

posted @ 2021-10-27 23:49  大风吹爱护  阅读(34)  评论(0编辑  收藏  举报