The Pragmatic Programmer
前阵子看完了《The Pragmatic Programmer: From Journeyman to Master》,虽然该书是1999年发行的,也没有新版本出来,但读了之后还是感觉受益良多。
先说说不够好的方面。程序开发方面的知识和技术变化非常快,书中知识点可能都没跟上时代的脚步,比如介绍版本控制(Source Control)时就没有提高当前最流行的Git。书中也没有讲到怎么利用社交媒体来提升自身的价值。书里的知识点有些缺乏足够的案列来介绍具体该如何操作,只有对于有相关经验的开发者才能体会到书里表述的信息。所以书里讲得虽然好,还是需要更多的实践去累计其经验。
当然好的方面远远多很多。书里的知识是经过了作者数十年的经验累积总结下来的,这么多年里也获得了众人的认可。书中涵盖的软件开发方面的内容非常的广泛,从如何开始开发,怎么开发,到之后如何协作维护,最后文档总结归纳都有介绍。很多书里的告诫都让我找到了现实中不合理的依据:比如“Don’t Live with Broken Windows”让我明白为什么大家不喜欢写单元测试,就是因为我们项目本身没有多少单元测试, 而我也应该去“Fix the Problem, Not the Blame”,并且要“Be a Catalyst for Change”来测试组里的人去参与到自动化测试中。书中很多知识都可以在现在继续实践,比如书中“Domain Language”一节里就介绍了Backus–Naur form(BNF),让我意识到用很多时候对于问题需求和结论的描述,其实可以用这种结构化的语言来描绘会清晰很多。回想其实SQL语言查询语句的规格,还有Java语言的规格就是用这类语言来表述的,可惜之前并不知道它们也是值得学习的一部分。
我无法将整本书向大家完全阐述清楚,还是需要自己去阅读,并结合实际环境和能力来实践。
书中穿插了很多简短的建议,总结在本文以供参阅:
Read More →