学习 Ruby 已经有挺长时间了,应朋友要求,特意写了这一系列的 Ruby Primer 教程。

Ruby 初识


Ruby 是一门开源、跨平台、面向对象的动态类型编程语言,在 20 世纪 90 年代由日本人松本行弘(Yukihiro Matsumoto, Matz)所开发,遵守 GPL 协议和 Ruby License。如果你也学习过 Perl、Python,那么学习 Ruby 的过程将会十分快速和顺利,因为 Ruby 的许多灵感来自于这些语言,是为了造就完美的编程体验所创造的语言。

Ruby 特性


相对于其他主流语言,除了前面提到的开源、跨平台、面向对象之外,Ruby还有一些其他特性。

  • 语法自然简洁,Ruby 具有更易读易懂更加自然的语法,我们使用主流语言 Java 和 Ruby 输出十句 Hello, World 来做对比:

    • Java
for (int i = 0; i < 10; ++i) {
	System.out.println("Hello, World");
}
* Ruby
10.times do
	puts "Hello, World"
end
  • 无需编译,Ruby 属于脚本语言,它可以直接解释运行

  • 灵活的语言设计,使用者可以随意改变原始设计

  • 强大的 Blocks 和 Closures

  • 继承和 Mixin

  • Ruby Gem

Ruby on Rails


Ruby 之所以能进入我们的视线中,Ruby on Rails (RoR) 框架功不可没,它的应用十分广泛,例如国外的 Github、Twitter、Groupon、SlideShare、Dribble、Basecamp、Airbnb、Tumblr 以及国内的 36Kr、ITEye、GuruDigger、GitCafe,CSDN BBS 等。

Matz Ruby Interpreter


前面提到 Ruby 是一门脚本语言,因此解释器成为一个不得不说的话题。Ruby 默认的官方解释器被称为 MRI (Matz Ruby Interpreter),此外还有知名的 JRuby、Rubinius 等。