日期:2009-08-09  浏览次数:20515 次

第四篇  编码

    编程大师如是说:

    "一个写的完美的程序是其自身的天堂,而一个写得糟糕的程序则是其自身的地狱。"


    4.1
    一个程序应当是轻盈的、灵活的,它的子程序就像一串珍珠一样连接着。它的精神和意图应该贯穿始终。在程序中,内容既不应太多,也不应太少;既不该有不需要的循环结构,也不该有冗余的变量;既不缺乏结构性,又不过分僵化。
    一个程序应当遵循”最少惊呀原则”。这条原则是什么呢?简单地说,就是批一个程序对用户的指令所做出的反应,应该总是使用户最小程度的惊讶。
    一个程序,无论多么复杂,都应该以一个整体的方式运行。程序应以其内在的逻辑为指引,而非外在的形态。
    如果一个程序不能达到这些要求,它将处于一种杂乱无章和混淆不清的状态。唯一的更正方法就是重写这个程序。

    4.2
    一位初学者问大师:”我有一个程序,时灵时不灵。我一直都遵循的编程的规则,结果却整个儿搞糊涂了。这是什么原因呢?”
    大师回答说:”因为你没有领悟道,所以你迷惑不解,只有傻瓜才会指望从人类身上看到理性的行为,你又能打望一台人类制造的机器怎么样呢?计算机模仿的是决定论,只有道才是尽善尽美。
编程用的那些条条框框式的规则仅仅是昙花一现,只有道才是永恒的。因此,在你受到的启发之前,你必须沉思于道。”
“但我怎样才能知道我已经受到启发了呢?”初学者问。
“当你的程序运行无误时。”大师回答说。

    4.3
    一位大学正在向他的一名初学编程的弟子解释道的真谛。”此道体现在所有的软件当中----不管它看上去多么无足轻重。”大师说着。
    “此道体现在手掌计算器中吗?”初学者问。
    “是的。”
    “此道体现在电子游戏中吗?”初学者继续问。
    “此道甚至也体现在电子游戏中。”大师说。
    “那么此道体现在个人电脑的DOS系统中吗?”
    大师轻咳一声,并稍稍挪动了一下位置。”今天的课就到这里吧。”他说。

    4.4
    一位项目经理手下的一名程序员正在编写软件。他的手指在键盘上飞舞着,在程序的编译过程中没有出理任何错误信息。程序运行起来就像一阵和风。
    “太好了!”经理高兴地大叫起来,”你的技艺简直完美无缺。”
    “技艺?”程序员说着便从他的终端机前转过身来,”我遵循的是道-----所有的技艺远不能及!当我刚开始编程时,我眼前看见的是整个问题乱成一团。三年之后,我再也看不见这种一团糟的情形了。相反,我用了各种各样的子程序。但现在,我什么也看不见了。我的整个身心存在于一种无形的虚空里,我的知觉是空荡荡的。
    我的精神随其本能而动,不需计划就能自由的工作。总而言之,是我的程序自己写出了自己。诚然,有时会有一些难题。我看见那些难题向我走来,于是我放慢了速度,默默地注视着他们。然后我更改了一行编码,那些问题就烟消云散了。然后我完成程序的编译。我静静地坐着,让工作的欢愉遍布我的全身。我闭上双眼,歇息片刻,然后退出系统。”
    经理说:”希望我所有的程序员都这么聪明。”

[待续]