Ruby for Rails中文版

出版时间:2007年06月  出版社:人民邮电出版社  作者:David Black  页数:386  字数:616000  译者:吴畅欣,张明生  
Tag标签:无  

内容概要

本书是一部专门为Rails实践而写的经典Ruby著作,由四部分组成,共17章。第一部分讲述Ruby和Rails的编程环境。第二部分和第三部分与Rails紧密联系,着重对Ruby这门语言进行详细介绍;所采用的Rails应用示例,既说明了Ruby的特性,也给出了有关Rails的重要信息。第四部分讲述了如何应用第二部分和第三部分的Ruby知识来开发Rails应用。    本书适合于Ruby的初学者,也适合于想要进一步提高Ruby编程技能,开发实际Rails应用的Web程序员。

作者简介

David A.Black世界顶尖的Ruby和Rails专家、Ruby和Rails的主要倡导机构之一Ruby Central(RbyConf和RailsConf主办者)的负责人。他是Roby核心开发者之一,RCRchive的维护者。

书籍目录

第一部分 Ruby/Rails全景  第1章 Ruby工作原理     1.1 编写Ruby程序的基本过程     1.2 激活解释器的方法     1.3 Ruby扩展和程序库     1.4 剖析Ruby编程环境    1.5 小结   第2章 Rails工作原理     2.1 深入Rails框架     2.2 分析Rails的MVC实现    2.3 全程开发Rails应用     2.4 全程跟踪Rails的运行     2.5 小结   第3章 了解Ruby前提下的Rails开发     3.1 了解代码在做什么的第一次尝试     3.2 开始用Ruby在代码中做更多的事    3.3 实现与应用相关的技能和任务     3.4 小结第二部分 Ruby构造块  第4章 对象和变量     4.1 从“事物”到对象     4.2 对象的固有行为     4.3 必需参数、可选参数以及默认值参数    4.4 局部变量和变量赋值     4.5 小结  第5章 用类组织对象    5.1 类和实例     5.2 设置方法     5.3 属性和attr_*方法族     5.4 类方法和Class类    5.5 进一步学习常量    5.6 继承     5.7 小结   第6章 模块和程序组织     6.1 创建和使用模块的基础知识     6.2 模块、类和方法查找     6.3 类/模块的设计和命名    6.4 小结  第7章 默认对象和作用域     7.1 理解当前对象或默认对象self     7.2 确定作用域     7.3 部署方法访问权限规则     7.4 编写和使用顶层方法     7.5 小结  第8章 控制流技术 第三部分 内建类和内建模块  第9章 内建类和模块基础知识   第10章 标量对象   第11章 集合、容器和可枚举性  第12章 正则表达式和基于它的字符串操作  第13章 Ruby动态特性 第四部分 结合Ruby和Rails  第14章 再次为R4Rmusic应用领域建模   第15章 通过编程改进ActiveRecord模型  第16章 改进控制器和视图   第17章 探索Rails源代码的技术附录A Ruby和Rails的安装和资源索引

媒体关注与评论

  当Manning出版社的编辑问我,写一本Ruby新书的时机是否已经成熟,如果已经成熟,这本书应该包含什么内容,应该由谁来写时,我的回答是:.  “是的……应该专门为Rails实践者写一本关于Ruby语言的书……我可以来写。”  他们同意了。  我由衷地为得到这个机会而高兴。自从2004年秋开始使用Ruby on Rails框架以来(这也使我成为较早的Rails使用者之一),我一直在沿着“Ruby for Rails”的思路思考。那年夏天Rails第一次发布,我是在2004年国际Ruby大会上通过David Heinemeier Hansson(Rails的创造者)的演示了解到Rails的。  本书书名Ruby for Rails听起来好像要讲的东西和常规的Ruby不一样,好像是要将Ruby用户划分成Rails和非Rails两个阵营。不过我认为正好相反,这才是真正的Ruby,常规的Ruby,只不过我们是从Rails开发者的需要出发来学习它的。我本人恰好能够充分理解这种方法的潜力:在开始使用Rails之前,我已经使用Ruby大约4年,并且当我开始使用Rails时,我很快就意识到,深入地了解Ruby可以帮助Rails开发人员达到他们的目标。  我看到很多Rails新手都在问他们自己,为了使用Rails是否有必要学习Ruby,这引起了我的注意。事实上,这个问题成了一个引发分歧和争执的话题,对此我非常惊讶。这一事实暗示以下几点:  首先,基础知识的学习显然是需要的:Rails是用Ruby编写的,各种Rails应用也是用Ruby编写的,所以,只要编写Rails应用,就肯定要使用Ruby。其次,我可以看到这些Rails开发者们开始在无意之中画地为牢(他们的动机是好的,但是有些片面),我觉得自己能够也应该为此做些什么。他们是在为自己设置一个玻璃天花板,他们让Rails应用运转起来,还用Rails技术和惯用法实现一些相当灵巧的东西,但同时也将发挥Ruby(事实上他们已经在使用这门语言)全部威力的机会拒之门外。这个问题必须解决。  我也注意到,在各个论坛中以各种各样的形式大量出现这样的问题:“我知道应该写belongs_to:customer,但这到底是什么呢?”很多Rails使用者告诉我,他们能通过模仿和修改其他应用的代码来让自己的应用运行起来,但是对此并不满意,因为他们觉得自己并不了解究竟发生了什么。他们用Ruby知识理解Rails代码时会遇到麻烦,这一事实说明他们还没有进入下一个层次:使用Ruby的全部威力来改进和扩展Rails应用。  这让我想到,一本以Rails为中心的Ruby语言指南可以实现双重目的。首先是向那些还没有了解情况的Rails开发者们说明:Ruby和Rails并不是互不相关的,它们更像是一种父与子的技术关系,其间有着非常开放的交流和互动。其次是打碎阻碍Rails开发者更有效地使用Ruby的玻璃天花板。  写作本书的项目启动后,我的目标确定为:阐明Rails开发者学习Ruby完全是一个有益的、双赢的方案。这并不意味着Rails有缺陷从而需要通过了解一项外来技术加以弥补。相反,Rails有一个突出的优点:它是以一种优雅、简洁、非常易于理解的编程语言(即Ruby)写成的。这其中的含义对于日常的Rails编程来说是很重要的,对其进行探索也是很愉快的。  因此,本书重申和解释了语言和框架之间一直存在的关系,并邀请大家一起来打碎这个玻璃天花板。  致谢  本书得益于来自各方面的帮助。  在Manning出版社,助理组稿编辑Megan Yockey和出版助理Blaise Bace热情地帮助我完成了项目的计划书和合同的签订。我与开发编辑Doug Bennett最初的协作富有成果;接着,因为进度和后勤的原因,该项目被重新分配给开发编辑Lianna Wlasiuk,我们继续紧密合作直到完成本书的编写,我们一起温和但是坚决地拒绝一切无关的东西,从而完成了一个强大的、无暇的产品。  审校编辑Karen Tegtmeyer分别找来了来自Ruby和Rails两方面的专家,他们负责评审在预定的不同阶段部分完成的书稿——我喜欢这样来看待该过程,越是我不确定的地方,我越是能看到它能提供实质性的帮助。版式设计师Dottie Marsico与我一起设计插图,我要为新学到的OpenOffice画图技巧而感谢她,也感谢她的鼓励和她对问题做出的快速反应。  当本书进入制作的后期和生产阶段时,我得到生产主管Mary Piergies不可或缺的支持和帮助,他协调这个地理上相距较远的过程,使得该过程既协调又很有动力。对于文字编辑Tiffany Taylor,我只能说我很快就习惯于让OpenOffice隐藏文档中的修改历史,只要将文本显示为Tiffany修改后的样子即可。另外,我毫不怀疑,本书的篇章的合理布局完全归功于Tiffany删除了过多的冗余。  技术校对Bruce Williams提出了大量的建议并做了大量的修改,我可以向读者保证,这显著提高了代码示例以及文字的可读性。没有什么能比另一双锐利的眼睛以及另一个测试者更能彻底地说服一个人:在剪切并粘贴代码后,确实不需要对代码做一点修改就可以运行……  我和三个校对一起工作。Elizabeth R. Martin友好地加入进来,帮助本项目克服进度方面的拖延,严格地审查本书的前几章。Elizabeth校对了书稿的平衡性,我不仅要依靠他发现错误,而且不断地就字体的一致性和版式相关的各种问题向他咨询。Barbara Mirecki对书稿进行了仔细的、娴熟的最后审校。Katie Tennant用专业的技能和他的关注来纠正我用意良好但是难免不完美的索引方面的工作。排版员Gordan Salinovic辛勤工作并密切配合,保证了图书具有一致的、对读者友好的外观。..  Manning的网站管理员Iain Shigeoka在幕后保证信息在产品组的不同成员和我本人之间顺利地传递,并且在有限的几次故障突然发生时,迅速地提供帮助。  在市场方面,Manning的销售和市场总监Ron Tomich和市场主管Helen Trimes一直将本书置于Ruby/Rails读者的关注之下,并且在整个过程中寻求给我的意见和协作。尽管Ruby和Rails的流行会起到一定的作用,但是没有一本书可以靠自我推荐而畅销,Helen和Ron一直在为这本书不遗余力地做宣传工作。  最后但绝对不是无关紧要的是:在Manning项目组成员中,我要感谢出版人Marjan Bace,他迅速看到这个项目的可行性,毫无保留地支持它,并巧妙地引导它越过各种难关。Marjan的参与、专注以及对出版的全面把握,让我和本书都获益匪浅。  我要感谢本书最初的计划书的审稿人以及所有参与到不同阶段的部分书稿评审的外部读者。来自后一组人的很多评议和批评的影响比他们自己预料的还要大。感谢Anjan Bacchu、Christopher Bailey、Jamis Buck、Stuart Caborn、Tom Copeland、Ryan Cox、Jeff Cunningham、Pat Dennis、Mark Eagle、Sasa Ebach、Shaun Fanning、Hal Fulton、Benjamin Gorlick、Erik Hatcher、David Heinemeier Hansson、Jack Herrington、Bob Hutchison、Duane Johnson、Albert Koscielny、Robert McGovern、Andrew Oswald、George Peter、Michael Schubert、Nicholas Seckar、Jon Skeet、Dave Steinberg、Mike Stok、Jon Tirsen、Wayne Vucenic、Doug Warren、Mark Watson 以及另外两个匿名的审稿人。  我十分感激本书的MEAP(Manning Early Access Program)版的订阅者,在本书还未定型、尚在修改的时候,他们发现并报告了不少不容轻视的错误。我不在此提及他们的名字(他们的报告贴在作者的在线论坛:http://www.manning.com/black中),但我要感谢他们中的每一个人。  我使用Ruby已经超过5年,并且从Rails首次发布几个月之后就一直使用Rails。在Ruby/Rails这个圈子里,我有很多的朋友和同事。他们中的很多人以这样或那样的方式帮助这个项目得以实现。我的朋友,Ruby Central的负责人之一Chad Fowler,Ruby世界里的名人(也是我的聊天工具AIM窗口中的常客),在本书成形的整个过程中,用他的建议、鼓励、富有同情心的倾听和挑剔的眼睛一直在支持我。在听取一次大会报告的过程中,我通过和David Heinemeier Hansson私下聊天,第一次学到了Rails的基本知识。在我写作本书时,David是一个有力的项目支持者,也是一个极佳的技术顾问。还要感谢他为本书做序。  我也从邮件列表和IRC频道中的很多参与者以及在大会和用户组会议上遇到的Ruby高手们的帮助和他们对Ruby所表达的观点中获益不少。就像人们常说的,要感谢的人多得列都列不完。但是我必须要提到下列人员:Marcel Molina和Wayne Vucenic;纽约Ruby用户组的成员,特别是Sebastian Delmont、Conor Hunt、Francis、Hwang、Gianni Jacklone、Matt Pelletier和Zed Shaw;伦敦和丹佛Ruby用户组的成员,他们邀请我去介绍我正在创作的作品;还有在irc.freenode.net上的#ruby-lang频道的居民们,我和他们有5年不中断的(几乎总是)愉快的对话。如果有人因为没被列入这个肯定不全的列表中而感到不公平的话,请在下次大会上罚我喝酒。  从本项目开始的第一天起,我的家人就很热心地给予支持并一直关注它的进展,尽管本书离他们任何人所感兴趣的领域都相距甚远。将感谢和爱献给Barbara Aronstein Black、Gavin Black、Robin Black、Richard Goldberg、Laurie Schafer以及本书的受赠者。  在本书写作的过程中,我得到了各方面的帮助、反馈、意见和指导。但是,任何事实上的或技术上的错误,或者风格上的判断失误,都是我一个人的责任。

编辑推荐

  “本书作者曾经教过我很多Ruby知识……每一个从其他语言转到Rais的人都应该拥用本书。为了充分发挥Rails的潜力,花时间去全面掌握Ruby是至关重要的。本书提供了达到这一目的所需要的一切。”  ——David Heinemeier Hansson Ruby on Rails之父  Ruby on Rails(RoR)已经成为如今最灸手可热的Web开发技术之 。借助RoR你可以轻松快速地创建功能强大的Web应用!  Rails框架本身就是用Ruby写成的,所以Rails应用都是Ruby程序,这就意味着要想发挥Rails的全部威力,必须首先深入全面地掌握Ruby这部语言。  本书是世界顶尖的Ruby专家为Ruby初学者尤其是具备其他语言背景的Rails开发者最身打造的绝佳Ruby教程。在讲述Ruby知识的过程中,始终从Rails开发实战出发,揭示Rails和Puby之间的微妙关系,阐述Rails自身特有的技术、惯用法和设计理念,并用Rails开发了一个网上音乐店实例。最后还介绍了探索Rails源代码的各种技术,为你继续深入打下基础。

图书封面

图书标签Tags

评论、评分、阅读与下载


    Ruby for Rails中文版 PDF格式下载


用户评论 (总计18条)

 
 

  •   Ruby的兴起,其实只不过是一个积累了几十年的技术趋势的能量释放。世界上第二个程序设计语言Lisp及其后续家族成员都是最最动态的语言。早在七十年代,伴随着图形界面的出现,Smalltalk就以其纯粹的面向对象和纯粹的动态性获得有识之士的认可。自1986年代Perl出现以来,大量开发者就认识到,动态语言开发效率高,限制少,能够自由的表达思想,轻松完成在传统语言中非常困难的工作。很多人都预言动态语言迟早会成为主流。然而在整个1990年代,无论是计算机硬件条件还是软件工程的水平,都还不够成熟,再加上Perl自身存在一些问题,动态语言始终只是作为主流语言的一种有力的补充而存在。2000年之后,PHP大流行,在Web开发领域三分天下有其一。但是PHP本身完全是为Web而做,当扩展到其他领域时,就凸显出先天不足的劣势,因此地主稳坐,霸业难成。直到现在,无论是硬件条件、软件开发的方法,还是客观应用环境都逐渐成熟,在这个时候,Ruby借Rails框架赢得广泛关注,当然不是偶然的现象。在TIOBE全球程序设计语言排名表中,Ruby排名一年间跳升15位,而根据O’Reilly公司对于图书市场的统计,Ruby相关书籍的销量在2005年增长15倍的基础之上,今年又增长了7倍,已经超过Python和Perl。再看看是谁在关注Ruby,抛开一手把Ruby炒热的“PragmaticProgrammer二人组”DaveThomas和AndyHunt不说,一大批编程老枪都在尝试或者已经转向Ruby,这其中的著名人物包括RobertC.Martin、MartinFowler、BruceTate等。如果这些还不够令人印象深刻的话,我们应该注意一下近期有关Ruby的一些事件。最近Sun雇用了开源项目JRuby的两名主要开发者,让他们可以全职开发JRuby,从而正式将Ruby语言搬上JVM。同时,微软也在上个月的一次有关.NET语言的技术会议上邀请RubyCLR的主要开发者JohnLam发表演讲,外界传言他将加入IronPython开发者JimHugunin所在的团队,从而加速Rubyfor.NET的开发进程。另一个致力于RichInternetApplication的软件巨头Adobe于几天前刚刚发布了用以将Flex2.0整合到RubyonRails中的SDK。对于那些整天盯着巨头们脸色行事的人来说,这些消息就算不是金口玉言,至少也是明确的迹象了吧。然而,比上面一切都更为重要的是,今天的世界已经变了,已经不是15年前C++统治一切的那个世界,也不是10年前Java中彩票的那个世界,甚至也不是5年前VisualBasic狂练葵花宝典的那个年代。互联网改变了太多的东西,经济形态和公司业务的形式和途径都已经并且仍在发生迅速的、根本性的变化。开放、互联、敏捷、整合、平等、自由、高速、专业,所有这些给我们带来了新的经济运行模式,也对软件的开发提出了新的要求。Ruby,以及Ruby所代表的一类动态的、自由的程序设计语言和开发思想已经迎来了它们的时代,它们将和其他的科技一起,在下一个轮回中改变我们的工作,改变我们的生活,改变我们的观念,直到下下个轮回将它们扫进历史的功劳簿中为止。所以,该放下的时候,就勇敢地放下吧。当然,如果想再跟发展大势打一打,那就打一打,反正在技术进步的路上,保守的一方终究是要被解决的。
  •   说实在的,这本书的年代有点久远了,里面讲的rails版本比较低,不过这不是重点,重点是作者介绍了作为一名rails程序员所必须掌握的ruby核心语言知识!不管rails多么快速发展,这些东西都是根基,只有打好了基础才能运用自如。推荐所有ruby/rails爱好者都看看这本书,应该会让你有种豁然开朗的感觉。另外,manning已经发布了这本书的第二版,希望国内出版社能继续跟进,好书齐分享嘛。
  •   rubyforrails比很多专门讲ruby的书都要好。这是是真的。
  •   这本书对我理解ruby语言的特性很有帮助
  •   ROR入门精选!ROR入门精选!ROR入门精选!ROR入门精选!ROR入门精选!ROR入门精选!ROR入门精选!ROR入门精选!ROR入门精选!ROR入门精选!真的是一本ROR的好书值的收藏!
  •   好书一本,很合适想入门的人。推荐购买!
  •   讲的很细腻
  •   确实不错讲的很细腻
  •   讲得十分透彻,是必读的一本
  •   本书从rails的开发入手,引导读者一步一步学习ruby的基础知识。值得一读,是适合初学者学习的一本入门级图书。
  •   这本书的重点一分为二,Rails和Ruby,它详细深入地分析了Rails的用法以及在这背后的Ruby原理,一本书读下来,就对Rails的众多语法特性有了非常宝贵的基础认识,从此再看专门讲解Rails细节的书籍,就没有任何的障碍了,这本书的意义对我的意义非常重要!
  •   Rails讲得比较深入,重点的时候会带着讲Ruby
  •   在今時今日,本書對Ruby語言的描述比其在Rails上更值得一看。當中,提及了一些ProgrammingRuby上也沒提到的細節。
  •   看完了这本书,给我的感觉是讲的知识点比如语法类的知识也不够非常的详细,很多细节的东西并没有体现出来,而且对于世纪的例子也比较少,所以对于入门的人来说这本书不太适合,我在看着本书之前看了敏捷web开发这本书,这本书感觉非常适合入门的人,书中以例子为导向,让我们在实践中发现问题、解决问题、从而加固这方面的知识。书中后面有对于与法等方面的讲解,但是不够全面,但感觉对一些对象的讲解还是不错的,很到位,而对于一般的控制、集合等都没有讲解,那些我是在其他电子书上看的。所以学ruby的话,感觉还是买敏捷web开发。
  •   书看起来有点旧,不过关键还是看内容的!
  •   哎~~~~~~~~~~~~~~~~~~~~~~
  •   本书还不错,适合进阶学习的,不然会看的很费气力的哦!
  •   这本只是Ruby进阶Rails的书籍,要想深入学习Ruby或Rails都不是很好的选择
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7