rails 是一个易用的框架,但像任何技术一样,要精通它还需一定的时间。您可能对 ruby on rails 已有所耳闻,这一新应用框架正以狂风暴雨之势席卷 web 开发社区,尤其是 j2ee 与 php 编程界。
rails 是一个功能强大的 web 应用平台,在不到两年的时间内便赢得了众多 j2ee 与 php 编程人员的广泛青睐。它为什么会得到 j2ee 与 php 编程人员的垂青?了解 rails 的优势后您的疑问将一扫而空。其一是它使用了严格的 model-view-controller (模式—视图—控制器)体系结构,赢得了自尊且醉心于设计模式的“妄客”(自我的技术迷)的尊敬 — 这是 j2ee 开发人员对其情有独钟的原因。其二是使用 rails 可以非常方便地构建基础系统 — 这是它吸引 php 开发人员的原因。
本文不是 rails 的吹捧文章或是批判文章,仅是对这一技术的一个介绍。其中既有褒奖也有批评。可能有时批判显得有点严厉(在 rails 狂热爱好者眼中尤其如此),但是不要为表象所迷惑。使用任何 web 应用框架都要讲究技巧,不管它是 j2ee、asp.net、或 php。从长远来看,使用 rails 比使用其它 web 应用开发平台的效率更高,但是需要一定的时间来熟悉与掌握该技术。 【相关文章:一步一步教你加密解密技术——压缩与脱壳(】
但是,从数据库角度来看,rails 有一些非常明显的缺陷。rails 对数据库布局与应用程序需求作了许多假定。比如,rails 假定所有表都使用一个非复合的主键。它不支持复合主键!另外,rails 不支持双步提交;它只能用于单个数据库后端的情况。 【扩展阅读:一步一步教你加密解密技术——压缩与脱壳(】
ruby 是一种动态编程语言,它在许多方面类似于 perl、python 与 smalltalk,但是它是自成体系的。java 与 php 编程人员似乎可以很轻松的掌握这一语言,他们是 ruby 的最大拥护者。这一语言还吸引着其他人的加入,包括 don box 这位 microsoft 界的超级“妄客”。 【扩展信息:一步一步教你加密解密技术——压缩与脱壳(】
什么是 ruby?什么是 rails?
ruby 的历史不短,它问世于 1993 年,先于在 1995 年便为公众知晓的 java 与 php。所以尽管 ruby 是一个成熟的语言,却不如其它语言普及。这造成了 ruby 编程语言阵营并不如 java、php 与 perl 阵营强大。因此,您会发现专门针对这一语言的框架、库、书籍、网站、博客与其它资源都比较少。
在 david heinemeier hanson 于近期推出了 rails 框架后,ruby 社区推广能力不济的颓势得到了扭转,有证据表明该框架是 ruby 诞生以来最受欢迎的应用程序。rails 将 ruby 编程语言扩展为极其适用于 web 开发的领域特定语言(domain specific language)。它还借用了 activerecord 扩展,将对象关系持久性引入了 ruby 语言。rails 让人敬而远之的原因除了它不支持复合主键与两步提交外,其最大的障碍在于要使用它您需要重新学习一门编程语言。这不是大部分人可以不求甚解一略而过的阶段,学习一门新语言虽然可以为您带来欢乐,但同时却是一条令人生畏的坎坷之途。
但是,如果您想在自己的履历中添上浓墨重彩的一笔,ruby 语言便是不二之选。梅花香自苦寒来,ruby 是一个完全不受商业利益左右,历经 10 年锤炼而成的语言。所以,使用 ruby 能给您带来愉悦的享受,在很多情况下,其生产率比 java、c 与 microsoft .net 语言高出一个数量级。(ironpython 可能是个例外,它是 python 语言与 microsoft .net 环境的接口。python 类似于 ruby,也是一个生产率很高的动态编程语言。)
... 下一页