随着动态语言逐步得到开发领域的认可,创建在 Google Code 上的 Ruby 开源项目也逐步增多。InfoQ 在前不久发布了 Google SoC 系列文章,其中包含 Ruby 文档分析器 dcov、Rubyland、Ruby 实现约束规划等内容。Ruby 是否会成为继 Python 之后 Google 在动态语言方面的下一个关注焦点,以及 Ruby 语言的增长趋势是否在 Google 应用上得到体现,本文将会在这方面进行探讨。
作为互联网第一搜索品牌,Google 一直引领着互联网技术的发展趋势。在动态语言和开放源代码方面,Google 对其的支持力度也逐步加大。在 Python 编程语言创始人 Guido van Rossum 于 2005 年加入 Google 之后,Google 麾下的豪华阵容已包括互联网之父 Vint Cerf、编辑器 Vim 作者 Bram Moolenaar、Firefox 主要开发者 Ben Goodger 以及 Amazon 的 A9 搜索开发者 Udi Manber 等人。
Google 一直鼓励员工参与开源领域的工作,Guido 在 Google 的工作内容中包含新一代 Python 语言设计实现以及其他与动态语言语言相关的工作,Guido 就动态语言在 Google 内部的使用情况这样谈到:
动态语言已在主流开发领域中得到认可,并且增长势头非常快。业界对等动态语言的支持逐步增多,而不像以前更多偏向于 JAVA 和 C 语言,这对使用动态语言编程的开发人员是非常重要的。目前在 Google 公司内部,Python 是三大主要编程语言之一,而我在 Google 的工作除了负责 Python3000 的开发之外,还使用 Python 语言为 Google 工程师提供开发辅助工具。
Google 为动态语言的发展在多方面提供支持,就 Ruby 语言来看,除了众多创建在 Google Code 开源项目平台的 Ruby 项目之外,Google 的 3D 设计建模工具 Sketchup 也提供了 Ruby 语言接口,方便用户使用 Ruby 来建立自己的模型。同时 Ruby 语言开发的资源支持也逐步增多,在 Google Directory 上列出的 Ruby 语言相关资源中,开发者可以很方便的 Ruby 编程开发所涉及的各种有用链接。
一直支持和推广 Ruby 发展的非盈利组织,同时也是每年 RubyConf 大会 RailsConf 大会的组织者 Ruby Central ,在 Summer of Code 2007 的创意列表中列出了 Ruby 相关的众多项目创意。在领域特定语言(DSL)实现方面,Ruby 也是解决特定问题的极好的方式,正如 Jim Freeze 在《用 Ruby 创建领域特定语言》中谈到:
领域特定语言(DSL)是针对相对窄的应用范围设计的编程或描述语言。相对于通用目的语言,DSL 被设计用来处理特定的计算任务,这样的 DSL 仅适用于特定领域…我做过的很多项目要求一个非常详细的控制流描述,在项目中,这常常让我停下来并思考怎么将这些详细的配置数据引入到应用中。Ruby 作为一种领域特定语言,几乎是最为适合的,常常可以帮助我非常高效和快速的解决问题。
目前,每天有 1.5 亿人在网上利用 Google 搜索引擎通过近 80 种语言检索各种信息,在其中,Ruby 语言的检索结果约为 5,400,000 项,Python 语言的检索结果约为 8,350,000 项,用户对于 Ruby 的关注已经逐步与老牌的 Python 语言趋近。就 Ruby 的发展形式和趋势,孟岩在为《Programming Ruby》中文版的作序中这样评价道:
今天,Ruby 已经成为世界上发展最快的程序设计语言之一,一个充满热情和创造力的社群围绕着它,开展着种种激动人心的工作。在这里没有什么豪言壮语,但是所有的工作都在扎扎实实地推进,人们被自己内心的力量驱动着,而这种力量来自于 Ruby 质朴和自由的乐趣,它是近于纯粹的。
无论是 Web 开发还是桌面开发,目前的开发趋势正在朝着敏捷轻量级的高效模式发展,而 Ruby 语言最大优势正是在于极高的开发效率。Ruby 语言正好顺应了开发趋势发展的潮流,同时 Rails 的出现又极大的推动了 Ruby 语言的发展。相信 Ruby 语言强劲的发展趋势并非只是昙花一现,在日后的发展中,将有更为广阔的应用前景。
评论