《Ruby元编程》好书啊!
这两天在看Amazon买的《Metaprogramming Ruby》中文版《Ruby元编程》,真是一本好书啊,每一个Ruby开发者都应该看看,这里特别推荐下
Ruby中的元编程
《Ruby元编程》中的前五章以你和一位刚学Ruby几个月的同事Bill为主角,讲述了2人一同学习Ruby元编程的旅程。Bill可以称为作者的化身,向初出茅庐的Ruby程序员,你,讲述Ruby元编程的威力与魅力。
不得不说这本书是对《Ruby编程语言》一书中元编程内容的极大补完,耗子我当时看《Ruby编程语言》时,看到诸如eigenclass、Symblo#to_proc()、binding、instance_eval、class_eval等内容时真是不知所措。当时初学Ruby的确是看不太懂啊。
但在作者的笔下,元编程变的十分的清楚,并且十分的强大(书中的例子很好的体现了这一点)。而且作者也可以说是一位很好的作家,讲述一些难懂的概念非常具有逻辑性,让人有种在看小说的感觉(真的是如此)。
Rails中的元编程
书中的后三章以Rails中的ORM ActiveRecord作为例子,讲述了真实世界中Ruby元编程的威力。例如find_by_name这样的动态查找器是如何实现的,model中对所对应的数据库中的各个字段是如何自动生成的。
这几章算是前五章的一个实战,通过学习前五章的内容,你应该可以理解Rails中这些功能的实现方法,以及为什么这么实现。
翻译
对于翻译过来的技术书籍来说,译者是尤为重要的一环。这本书的译者也是《Ruby编程语言》一书的译者之一。怎么说呢,在我个人看来,翻译的真实太到位了。如果说不是原作者时不时来一句老外式的调侃,我还真以为这本书的原文是中文呢!
当然错误还是有,我看到过几个错别字,几行代码少了空格等,但都无伤大雅,整本书看起来十分流畅。
最后…
一点小小的遗憾就是该书是《Metaprogramming Ruby》的第一版的中译本,当然这是中译本的通病。不过这时作者的工作环境已经是Ruby 1.9.x了,所以和我们现在使用的1.9.2、1.9.3很接近。Rails是2.3的版本,但是ActiveRecord相关部分和现在3.2是没有什么变化的,看起来没有任何影响。
最后就是看了这篇文章的你如果作为Ruby程序员还没看过《Ruby元编程》这本书的话,还在等什么?立刻抱回来看吧。