`

庄表伟:由禅宗教你怎样进入编程世界(转)

阅读更多
宋代禅宗大师青原行思提出参禅的三重境界:参禅之初,看山是山,看水是水;禅有悟时,看山不是山,看水不是水;禅中彻悟,看山仍然山,看水仍然是水。

      在庄表伟看来,技术的学习也是如此。

三重境界

庄表伟目前是印客网的技术总监。在他初学编程的时候,“看山是山,看水是水”。BASIC是BASIC语言,Logo是Logo语言,C是C语言,各不相同,需要分别学习、记忆和掌握各自的知识点。

等到渐渐地运用纯熟了,可以触类旁通,发现以前学过的那些语言和将要新学的,总有这样那样的相通、相近、相似之处。任何一门语言,庄表伟都能快速上手。在意识里语言已没有差别,无非是语法与关键字的区别而已。然而,过了很长时间他才发现,那时的自己远没有到达最高境界,最多也不过是“禅有悟时”。

那大约在2002年的时候。庄表伟开始接触Java,然后看了《Thinking in Java》这本书,进一步深入了解到Java语言的许许多多的细节和深刻的内涵。才醒悟到我以前所谓的掌握多种语言,其实还是只掌握了一门语言,就像《天龙八部》里的鸠摩智,以小无相神功,耍那少林七十二绝技,其实却都不过是一套本事罢了。而且更为重要的是他更加意识到要真正用好一门语言,发挥一门语言的长处,理解这门语言的思想内涵,实现细节是非常关键的。而实现细节是各个语言自身的特色,到头来还是把不同的语言,当成不同的语言来使用。看山仍然山,看水仍然是水。

再后来,在思考面向对象与框架的过程中,庄表伟得出了 “语言是强框架,而框架是弱语言”的结论。他说,“把握了这一点,就能够在更广阔的层面上,理解各种技术和语言了。” 这也是他在《敲响OO时代的丧钟》里所设计的“Dynamic Java”语言的理论基础

比Delphi 2007先想到

      山水各有特点,技术各有不同,那么在最初时,我们该选择什么技术方向去走呢?对此,庄表伟认为选择什么样的技术方向并不重要,关键是技术深度要尽可能的钻进去,要达到一定的境界,毕竟任何山水皆有独特的风景,任何一个技术方向也都值得深入的研究。他说最怕的一份简历里写满了技术词汇,却没一个拿得出手的本事。

技术成长的道路犹如坐禅,急不得更浮躁不得,是没有任何捷径可走的。所以在庄表伟的职业生涯过程中,他一直脚踏实地,不断提高自己的技术境界。付出总有收获,所以庄表伟对技术的驾驭越来越老练,他曾在几乎不可能的时间限制内完成项目,曾用非常先进的理念开发过至今仍然超越同类软件的产品。

这些不但提高了他的技术水平,也给庄表伟带去了成就感,给了他继续“修炼”技术的信心。用庄表伟的话说,“做软件开发这一行,能够让我不断的体会到大大小小的成就感,这也是我始终热爱这一行的根本原因。”

禅宗讲究潜心修炼,厚积薄发。庄表伟印象中比较深刻的一次“发力”是在1998 年的时候。他带了3个人,开发一个叫做Info Develop的项目,那是一个类似于FrontPage的Web开发集成环境的项目。在那个项目里,他们实现了一种叫做“Info Script”的脚本描述语言,用于描述各种HTML元素。

一个HTML组件,就是一个能够接收一组属性设定,输出一段HTML的Info Script脚本。通过灵活地编写这种控件脚本,可以任意地扩展WebIDE 中所支持的HTML控件,并且实现了类似VB/Delphi的可视化编辑。“到了今天,我看到Delphi 2007的VCL for Web,也不过就是这样的思路。这应该算是英雄所见略同吧。”
转自CSDN,原文地址
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics