开始
早就相对现在 Ruby/Rails 的书做个总结。方便对 Rails 感兴趣的朋友查找。
因为 ruby on rails 的书时效性很强,Ruby 语言 2007 之前跟 Rails 两年以前的书都没加在这个列表里。
有些特殊的跟设计相关的书例外。
Ruby:
入门篇
▲The Ruby Programming Language
Ruby 之父”Mats”参与写作的一本书。
很像 Ruby 的官方书,内容是 Ruby 每一部分的定义,简洁准确。稍微有点生涩,但是这类书大多是很好的的参考书。
如果你对 Ruby 有一定的了解,想要重新研究一下某一方面概念,比如 Ruby 里的 Closure。 除了 Google 可能这本书就是最佳选择了。
▲Programming Ruby 1.9: The Pragmatic Programmers’ Guide
著名的斧头书,很多人把这本书作为 Ruby 入门的标准教材。内容覆盖很全面。
虽然这本书看上去很厚,但是后一半是 Ruby API。语言上更为流畅,建议这本书入门,上面那本书速查。
▲Beginning Ruby: From Novice to Professional
这本书分三部分,第一部分使一些基础知识,第二部分侧重 Ruby 语言,最后一部分简略介绍了 ruby 在 web,网络,GUI 方面的应用,以及一部分的 Gem。
如果你第一次接触 Ruby,可一看一下这本书,如果已经看了其他的 ruby 的书,这本书除了第三部分一些内容可能帮助不是特别大。
▲The Book of Ruby: A Hands-On Guide for the Adventurous
这是一本 2011 年 7 月出的书,我看了他们免费的第十一章,关于 Symbol 的,给我的感觉是这本书的代码实例比较多。
喜欢通过代码学习的同学可以尝试一下这本书。
进阶篇
▲Eloquent Ruby
如果你刚看完一本 Ruby 入门教材,这是首选的第二本书。
这本书主要介绍了 Ruby 的开发风格,常用模式。一开始是 Ruby 基本话题,到后面是 Metaprogramming 最后由 DSL 的开发终结。
每一章除了内容之外,都有注意要点,和实际开源项目中的例子,讲解本章内容怎么在实际项目中应用的。
▲The Well-Grounded Rubyist
另一本不错的进阶书,跟 Eloquent Ruby 相比更侧重基础知识,对 Metaprogramming 的覆盖较少。
如果你有不错的编程基础,也可以把这本书作为入门书,入门类的图书对于有经验的程序员来说经常略显浅显。
▲Metaprogramming Ruby: Program Like the Ruby Pros
本书通过一个程序员 5 天的开发经历,介绍 Metaprogramming 的一些要点。
是不错的学习 Metaprogramming 的教材,可是因为角色扮演的语言太多,作为参考的时候不太容易立马找到要点。
建议读这本书的时候做笔记,以便以后重温实用。
▲Refactoring: Ruby Edition
我们公司 Ruby 工程师必读图书。
如果需要重构,强烈建议阅读。
如果不需要重构,也强烈建议阅读,以便找到需要重构的地方。
▲Design Patterns in Ruby
如果你对设计模式感兴趣,这是另一本强烈建议阅读的书。
▲Ruby Best Practices
相对较老的一本书。这本书主要是针对一些 Ruby 一些实用技巧及在实际情况下的应用。
如 Ruby method API 设计的最佳实践,动态特性和 Metaprogramming 的应用,函数式语言特性及文本处理等等。
如果感兴趣也是一本不错的课后读物。
Rails:
入门篇
▲Ruby on Rails 3 Tutorial: Learn Rails by Example
入门选择1,跟着例子学 Rails.
网上可以免费阅读:http://ruby.railstutorial.org/ruby-on-rails-tutorial-book#sec:comments_for_various_readers
▲Agile Web Development with Rails
入门选择2, 前半部分是跟着学 Rails,后半部分有 Rails 各部分的应用介绍。建议选择最新版。
▲Rails 3 Way
这本书不跟任何项目,适合参考,覆盖面广。
相对前两个,这本书更适合有一定 Rails 基础的人。
进阶篇
▲Rails 3 in Action
Rails Core Team 成员 Yahuda Katz 写的书,对 Rails 有一定了解的也可以用这本书入门。
这是 2011 年 9 月出的一本书,是为数不多的 Rails 3.1 的书之一。
▲Rails Recipes: Rails 3 Edition
2012年 2 月将要出版的一本书,菜谱书系列。适合拿来参考怎么用 Rails 解决某一类问题。
▲Crafting Rails Applications: Expert Practices for Everyday Rails Development
Rails Core Team 成员 Jose Valim 写的书。很多 Rails 进阶技巧和概念。
高手必读,初学勿看。
▲Rails AntiPatterns: Best Practice Ruby on Rails Refactoring
一本关于 Rails 重构的书,列举了很多 Rails 的最差实践,并提出解决方案。
是很好的进阶读物,避免一些常见问题。
▲Service-Oriented Design with Ruby and Rails
对 SOA 开发感兴趣的强烈建议这本书,有很多关于 Rails Web API 开发的有价值内容。
前半部分是一个案例学习和一些 Rails API 开发的基础知识。
后半部分是每一章都关注一些 Rails SOA 开发的实际问题,比如安全,消息,Load Balancing 和 Caching.
▲Enterprise Rails
这本书虽然相对较老,2008年出版,但很多设计方面的考量可以看一下。
例如 Database 的 Normal Form, Trigger 的应用,SOA 等。
其他:
下面这些是 Ruby 相关的一些书,跟 Rails 关系不是特别大,如果感兴趣可以挑来看看。
▲Build Awesome Command-Line Applications in Ruby: Control Your Computer, Simplify Your Life
构建很牛的 CLI Ruby 应用
▲The RSpec Book: Behaviour Driven Development with Rspec, Cucumber, and Friends
Rspec 的书
▲The Cucumber Book: Behaviour-Driven Development for Testers and Developers
Cucumber 的书
▲Everyday Scripting with Ruby: For Teams, Testers, and You Ruby 日常脚本
▲Wicked Cool Ruby Scripts: Useful Scripts That Solve Difficult Problems 巨酷 Ruby 脚本
▲Ruby by Example: Concepts and Code Ruby 代码实例
▲Distributed Programming with Ruby Ruby 分布式编程
▲Scripted GUI Testing with Ruby Ruby GUI 测试