首页English
  • 时政
  • 国际
  • 时评
  • 理论
  • 文化
  • 科技
  • 教育
  • 经济
  • 生活
  • 法治
  • 军事
  • 卫生
  • 健康
  • 女人
  • 文娱
  • 电视
  • 图片
  • 科普
  • 光明报系
  • 更多>>
  • 报 纸
    杂 志
    中华读书报 2011年10月19日 星期三

    一个好的编程语言不仅可以执行程序任务,也应该帮助程序员形成更好的编程逻辑。

    程序世界的快乐人

    匿 铭 《 中华读书报 》( 2011年10月19日   18 版)

        写这篇文章的时候,苹果官方网站证实了乔布斯去世的消息,虽然我并不是“果粉”(苹果迷的自称),但还是深为世界从此少了这位有如此创意的天才而惋惜。记得乔布斯曾表达过:如果人不能通过创造来改变世界,将是多大的一个遗憾。我想乔布斯在一点一点搭建他的苹果世界时应该了无遗憾吧。这个开头扯得有些远,因为想到松本行弘说他开发Ruby的初衷是希望得到快乐,我想乔布斯或许也这么想过。

        好了,说回这次的主角,程序语言Ruby的开发者松本行弘带来了他的最新作品——《松本行弘的程序世界》。这本书准确来说是本文集,是将松本于2005年5月到2009年4月在《日经Linux》杂志连载的“松本编程模式讲坛”文章,进行编辑修改而成。文章的时间有些久了,所以松本删除和修改了不合时代的内容,同时增加了自己对编程问题的新思考和新看法。在这本提名为“程序世界”的书里,松本行弘以Ruby语言为蓝本,提出了许多对其他语言也适用的设计原则和开发思想。

        Ruby这个名字源于7月诞生石红宝石(ruby),意为稀有、色彩强烈、热情、珍贵。在设计之初,松本希望人的位置在编程中得到更多重视,他说:“一个好的编程语言不仅可以执行程序任务,也应该帮助程序员形成更好的编程逻辑。”松本行弘曾经提到语言学里的一个Sapir-Whirf的假说,这个假说认为语言可以影响说话者的思想,也就是说,语言的不同会带来人们思维方式的不同。先不管这个假说在语言学里是不是正确的,松本认为至少计算机语言是符合这个假说的。他举了另外一个例子来说明这个观点:“圣经”级著作《人月神话》作者Frederick P.Brooks说过,不管一个程序员使用何种编程语言,他在一定时间内编写的程序行数是一定的。那意思就很明显了:编程语言的不同,会导致开发效率产生百倍甚至千倍的差别。而编写程序语言本身就是一件需要仔细斟酌考量的事情,如何集中多种特性而不成为简单的翻版,如何开创出自己的特性,如何让这种语言承载设计者的理念,都是需要开发者再三思考的问题。正是基于这种认识,松本行弘在Ruby的编写中大量吸取了各种编程语言的优劣之处,他始终没有忘记自己是为了得到快乐才进行开发,也正是在这种理念的推动下,当越来越多的程序员说出“用Ruby开发很快乐”时,松本得到的欣慰也越多。

        Ruby自1993年开发、1995年在互联网公布以来,逐渐得到不同国家程序员的认可和喜爱,因为它给予程序员自由发挥的空间更大,更加“人性化”,这种“人性化”的风格放在程序员身上,逐渐成为了一种文化。松本行弘将这种文化概括为“对高生产力的追求”、“富有柔性的软件开发”、“对程序员人性的尊重”、“鼓起勇气挑战新技术”等四个原则。原则说起来很抽象,但只要看看使用Ruby的程序员就知道这种文化代表了什么。比如用Ruby语言开发出Web框架Ruby on Rails的创建者David Heinemeier Hansson,这位仁兄不仅自己兼任保时捷车队的职业赛车手,且他的公司每周只用上4天班。也正是经由这位DHH的努力,Ruby开始在全球流行,而他开发的Ruby on Rails被很多人视为“软件开发的银弹”。

        2010年底,著名的SAAS厂商Salesforce以2.1亿美元的价格收购了PAAS厂商Heroku,并在今年7月聘请松本担任首席架构师。这不仅澄清了人们印象中Ruby只在非主流程序员社区中流行的误区,也标志着Ruby在云计算领域中的应用将更加广泛。

        《松本行弘的程序世界》,[日]松本行弘著,柳德燕等译,人民邮电出版社 2011 年8月,75.00元

    光明日报社概况 | 关于光明网 | 报网动态 | 联系我们 | 法律声明 | 光明网邮箱 | 网站地图

    光明日报版权所有