《程序员修炼之道》读书心得

时间:2023-02-12 10:43:07

2007-04-06

这本书是一个编程很厉害的师弟从图书馆借来的,原名直译为《注重实效的程序员》。我每天到实验 室比较早,就翻开这本书看几页。十几天下来,把这本书算是粗粗看完了。其间没有心得,便记录下来。但由于功底有限,对这本书中的一些地方还不甚理解。等以 后功力提高后,再细读一遍吧。

1 要经常性地修炼自己拥有的技能。书上的故事:一个公园有世界上最美丽的草坪。有人问那里的园丁,保养草坪有什么秘诀吗?园丁说:有,每天早晨拂去露水,每三修剪一次,每周碾压一次,这样坚持500年就可以了。
2 讲别人感兴趣的东西,讲了就要让别人听懂。
3 对一个事物要多动脑筋,结合自身的职业,从多个角度去思考。
4 程序员被教导说,要多写注释。但他们不知道为什么要写注释。糟糕的程序才需要很多注释。
5 编程很像作画,先勾勒轮廓,再绘制背景,最后一点一点地描绘细节。
6 语言的界限就是一个人的世界的界限。
7 编程时注意使用“合约”,即在函数的注释中,注明函数执行前需要满足什么条件,函数执行后需要满足什么条件,以及返回什么值。
8 IDE中的建立应用的向导不值得提倡,你点几个按钮,它就为你生成大量的代码,而且与你的代码交织在一起。如果你对生成的代码不甚了解,你就对应用失去了 控制,当程序出现问题,你都不知道如何修改。所以,如果你使用编程向导,先看一下它生成的代码,你是否理解,你能否自己手写。
9 学会将用户需求一般化。比如:用户要求只有人事部门才可以查看用户的档案。不能把这个理解为需求,因为这个里面掺杂着政治因素,可能过不了多久,政策变 了,不只人事部门,员工的上级也能察看员工档案,如果你把之前用户的陈述,当作需求,那么,当政策改变后,你将不得不改变程序。正确的做法是,把用户的陈 述一般化为:只有指定人员能察看用户的档案。然后把指定人员作为元数据,做到政策与程序分离,当政策变化时,你就只需要改变元数据,而不要改程序。

 

这是很久以前的读书笔记了,当时还在用windows,对作者说的掌握一个强大的编辑器和让工作自动化理解不深,现在用了很长时间的Linux,想起书中的指导,觉得那本书主要面向的读者还是类unix系统用户。

有机会把这本书重读一遍。
不过,话说回来,这些讲方法的书不能看太多,看多了就好像带了多块手表,你反而不知道该相信哪个手表的时间了。重要的是动手去做。

我以后应该不会做程序员了,如果生在国外,我就坚定地去搞技术或者艺术,但是在国内,不允许人这样,至少现在的社会这样不好,所以这辈子只是爱好而已啦。希望我的孩子能成为伟大的艺术家或者技术上的大师。