一个注重实效的IT男


原文链接: 一个注重实效的IT男

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

1 要经常性地修炼自己拥有的技能。书上的故事:一个公园有世界上最美丽的草坪。有人问那里的园丁,保养草坪有什么秘诀吗?园丁说:有,每天早晨拂去露水,每三修剪一次,每周碾压一次,这样坚持500年就可以了。
2 讲别人感兴趣的东西,讲了就要让别人听懂。
3 对一个事物要多动脑筋,结合自身的职业,从多个角度去思考。
4 我们被教导说,要多写注释。但他们不知道为什么要写注释。糟糕的程序才需要很多注释。
5 编程很像作画,先勾勒轮廓,再绘制背景,最后一点一点地描绘细节。
6 语言的界限就是一个人的世界的界限。
7 编程时注意使用“合约”,即在函数的注释中,注明函数执行前需要满足什么条件,函数执行后需要满足什么条件,以及返回什么值。
8 IDE中的建立应用的向导不值得提倡,你点几个按钮,它就为你生成大量的代码,而且与你的代码交织在一起。如果你对生成的代码不甚了解,你就对应用失去了控制,当程序出现问题,你都不知道如何修改。所以,如果你使用编程向导,先看一下它生成的代码,你是否理解,你能否自己手写。
9 学会将用户需求一般化。比如:用户要求只有人事部门才可以查看用户的档案。不能把这个理解为需求,因为这个里面掺杂着政治因素,可能过不了多久,政策变了,不只人事部门,员工的上级也能察看员工档案,如果你把之前用户的陈述,当作需求,那么,当政策改变后,你将不得不改变程序。正确的做法是,把用户的陈述一般化为:只有指定人员能察看用户的档案。然后把指定人员作为元数据,做到政策与程序分离,当政策变化时,你就只需要改变元数据,而不要改程序。
10 解开迷题的秘诀是确定真正的约束,并在其中找出解决方法。有些约束是绝对的,必须受到尊重,有些约束是你想象出来的。有些迷题之所以有效,是诱使你很快就因为某些并不真正存在的约束而忽略了潜在的解决方案。“在盒子外面思考”鼓励我们找出可能不适用的约束并忽略他们。其实找到真正的盒子和这个是一个意思。
11
面对棘手的问题时,列出所有在你面前的可能途径。不要排除任何东西,不管它听起来是多么愚蠢。然后逐一检查列表中每一项,并解释为何不能采用某个特定的途径。你确定吗?你能证明?你需要的只是区分真正的约束和令人误解的约束的智慧。
12
有一种网球训练方法叫做“内在的网球”:花上数小时击球过网,并不特意追求准确性,而是用语言描述球击中的地方与目标的相对位置。其思想是训练你的下意识和反应能力,于是你的球技就会得到提高,而无需有意识地去了解怎样提高。

`