Ruby 从入门到精通 译者序

来源:互联网 发布:2016比较火的网络歌曲 编辑:程序博客网 时间:2024/05/21 11:09

机械工业出版社

 


几年前刚通过Python接触到Ruby时,我的第一感觉就是,和传统语言相比,Python已经够好了,但是Ruby比Python还好!他的语法更简单易懂,灵活多变,而且实现了真正纯粹的面向对象,在Ruby中一切都是对象(例如1.upto(10)这种在传统语言中不可想象的语法)。它在程序语言设计的前人经验积累基础上,进行了大胆的组合与创新,已从量变到质变,达到了一个全新的高度。一直以来,我有一种观点:编程语言应该面向程序员,尽量为程序员提供遍历,不能只为了机器编译的方便,而让程序员背上不必要的学习和使用的负担。Ruby正是这样一门语言,它让我有一种感觉:我找到了!

Ruby语言自从诞生以来,由于没有“杀手级”应用,一直默默无闻地在小范围内传播,未得到广泛注意。直到2004年末,Ruby on Rails横空出世,世人这才惊觉,在耀眼夺目的Rails背后,有如此强大的Ruby。原来Ruby可以这么用,原来Ruby可以这么强!可以说,没有强大灵活的Ruby,就没有一鸣惊人的 Rails!

值得一提的是,教授语言的大师Bruce Eckel(即《Thinking in C++》、《Thinking in Java》等获奖名著的作者)和面向对象设计大师Martin Fowler(即《Patterns of Enterprise Application Architecture》、《Refactoring》、《UMLDistilled》、《Planning Extreme Programming》等获奖名著的作者)都对Ruby推崇备至,自从Ruby出现后,他们也像常人一样,从Python移情别恋到Ruby。

Ruby,一种功能强大的、真正的解释型面向对象脚本语言,在它诞生的很长一段时间里,一直处于被大多数人遗忘的角落里。直到最近几年,当David Heinemeier Hansson——Rails的创造者在2005年“全球开源大会”(OSCON)被评为“年度最佳黑客”;当Rails赢得2006年Jolt“最佳技术图书”大奖;当众多闪耀的光环笼罩着这个新生的宠儿时,越来越多的人开始通过Rails认识Ruby。

不可否认,Rails真的是很好、很强的。当你认认真真地看完任何一本Rails书籍,经应该用Rails开发出一个不错的Web应用程序,但您是否真正明白Ruby和Rails的关系呢?也许你会毫不犹豫地说:“Rails就是使用Ruby语言实现的一种Web快速开发的框架”。从广义上讲没错,但这样回答好像少了些细节的东西。首先,Ruby不是为Rails而生,但Ruby成就了Rails——因为Ruby的简洁性、高效性,David Heinemeier Hansson才使用它创造了一个优秀的Web框架,也就是后来大家所熟知的Rails。以为Rails是由Ruby语言实现的,所以只

要编写Rails应用程序,就必然离不开Ruby。其次,为什么我们在一台安装了Ruby的计算机上,只用一条命令就能完成Rails的安装,为什么在Rails更新如此之快的今天,我们只用一条命令就能将已安装的Rails更新为最新发布的版本,这都要归功与RubyGems——虽然它听起来很陌生。因为RubyGems的存在,使得我们在Ruby环境中,仅仅使用一条命里就能完成Rails的下载、安装以及升级;因为RubyGems的存在,Rails不仅仅是一个基于Ruby语言的优秀框架,更是一个能被Ruby开发者轻松管理和使用的Ruby库。RubyGems实际上是一个

Ruby应用程序的管理器,它定义了一种通用的Ruby软件包格式——一个经过包装的Ruby应用程序或Ruby库,我们称之为Gem,同时也为我们提供了一种简单、方便的方式来管理这些Gem。通过使用RubyGems,我们能基于标准、统一的接口构建并发RubyGem;通过使用Rubygems,我们能搭建统一的Ruby软件存储仓库,供全世界的Ruby爱好者互相交流,共享优秀的Ruby Gem,通过使用RubyGems,我们能从Ruby软件存储仓库上查询、搜索、下载、安装合适的Ruby Gem;通过使用RubyGems我们能方便地对本地安装的Ruby Gem进行升级或者删除;通过使用RubyGems,我们能轻松地管理某Ruby Gem的多个版本,能处理不同的Ruby Gem间的依赖关系;通过使用RubyGems,我们也能完成其他工作;总之,RubyGems是一个功能强大的Ruby Gem包管理平台。

原创粉丝点击