美的代码

来源:互联网 发布:电脑上下什么软件 编辑:程序博客网 时间:2024/04/27 23:08

 看到一个代码牛人招徒弟,要求中有一条,能识别代码的美与丑。  

本人酷爱书法,曾向一些高手请教,他们收徒标准中最重要的一条是要有独立的鉴赏力,能识别好书与丑书。这样看来,代码与书法都有异曲同工之妙。

CSDN首页上看到介绍Doom3的源代码,其中说到什么是优美的代码,有下面几条,摘录如下。

关于代码,什么才能被称为“好看”——或者说“优美”?在和几个程序员朋友讨论后,我得出了结论:
代码应该局部连贯而且功能单一:一个函数解决一个问题。而且应该很清晰。
局部代码应该能够解释,至少暗示整体的系统设计。
代码应该“自文档”,尽可能地避免注释。因为无论是在读还是写代码时,注释都是一项冗余工作。如果你需要添加注释才能帮别人理解,那么那段代码可能需要重写。

代码能做到无注释胜有注释,是一个一心执着于精品,长期痛苦修炼的过程。

想起金庸在《神雕侠侣》中描写剑魔独孤求败的学剑经历:

“纵横江湖三十余载,杀尽仇寇,败尽英雄,天下更无抗手,无可柰何,惟隐居深谷,以雕为友。呜呼,生平求一败而不可得,诚寂寥难堪也。
凌厉刚猛,无坚不摧,弱冠前以之与河朔群雄争锋。
紫薇软剑,三十岁前所用,误伤义士不祥,乃弃之深谷。
重剑无锋,大巧不工。四十岁前恃之横行天下。
四十岁后,不滞于物,草木竹石均可为剑。
自此精修,渐进至无剑胜有剑之境。
剑魔独孤求败既无敌于天下,乃埋剑于斯。呜呼!群雄束手,长剑空利,不亦悲夫!


又想起苏东坡论书法的一句诗来,“我书意造本无法,点画信手烦推求”,做人、工作、生活,美的东西道理都是相同的, 大巧不工,书法于是、剑术于是、代码亦应如是。

原创粉丝点击