Rails之道

出版时间:2010-4  出版社:人民邮电出版社  作者:(美)Obie Fernandez  页数:504  字数:818000  译者:Ruby on Rails中文社区  
Tag标签:无  

前言

在2004年末,我正在为一家大型美国汽车制造公司做咨询服务。当时和我一起工作的还有我的好朋友Aslak Hellesoy。我们所接手的那个项目很具挑战性,不仅面临困难的公司政治矛盾、技术障碍,而且工期很紧。这个项目的工期还不是一般意义上的紧张,在当时的项目情况下,如果我们每拖延一天完工,我们的客户就得被罚100万美元。因此压力可想而知! 在那个项目中我们曾面临一个具有争议的抉择,不过最后我们的团队决定将我们的连续整合系统构建在Aslak的一个业余项目Damage Control的基础上。Damage Control是老旧的Cruise Control服务器的Ruby版本,是由我们的雇主公司Thought Works开发的。 问题是Damage Control当时还是一个半成品,而且和其他许多Ruby事物一样,它在Windows系统中兼容性不是很好。我已经记不得是什么原因,不过当时我们必须将它部署到一个陈旧的Windows 2000服务器上,而且那个服务器上还跑着一个StarTeam代码版本库(折腾!)。 Aslak需要帮助——在这之后的几个星期,我们没日没夜地进行结对编程的工作。对DamageControl的程序代码和Ruby的Win32程序代码库的C代码进行了大量改造。当时的我具有八年正规行业的Java开发经验,而且当时我特别喜欢使用IntelliJ IDE;但在那段时间,我对Ruby的痛恨不禁溢于言表。 当这个倍具压力的项目上线之后,我接手了另一个相对轻松的任务并转去ThoughtWorks的伦敦办公室工作。过了大概一个月的时间,Ruby再一次吸引了我的注意。当时我在很多朋友的博客上看到他们激动地讨论一个即将发布的网络程序框架,叫做Ruby on Rails。于是我决定再来试试Ruby,或许它并非那么糟糕吧。我很快就创新地为ThoughtWorks建立起一个供内部使用的社区网络系统。 在2005年初的那几周中,我的Rails第一次亲密接触让我完全转变了看法。经年累月以来我所学到的那些用于构建网络应用程序的经验和技巧已经全部被浓缩到了这么一个程序框架中,更何况这个框架是用我所见过的最优雅而简练的编程语言编写的。我对Java的兴趣戛然而止(虽然之后我还差不多用了一年的IntelliJ)。我开始热心地在我的博客上撰写有关Ruby和Rails的文章,并且不遗余力地在ThoughtWorks的里里外外宣传它们。结果,正如他们所说的,Ruby on Rails是件影响网络应用程序开发的大事记。 当我在2007年撰写这本书的时候,ThoughtWorks全球收入中的近一半来自于我所推荐的Rails的项目生意。他们特别成立了一个很大的部门专门从事基于Ruby的商业软件开发工作。他们的产品中包括CruiseControl.rb,它很荣幸地成为Ruby on Rails核心团队所选择的连续式整合服务系统。我猜CruiseControl.rb就是Aslak一直以来都想编写的系统。

内容概要

  本书按照Rails的各个子系统进行组织编排,分别介绍了Rails的环境、初始过程、配置和日志记录,Rails的分配器、控制器、页面生成和路由,REST、资源和Rails,ActiveRecord的基础、关联、验证和高级技巧,ActionView的模板、缓存和帮助器,Ajax、Prototype和Scriptaculous等JavaScript代码库和RJS,Session管理、用户登录和认证系统,XML和ActiveResource,后台处理和ActionMaile,测试和specs(包括RSpec on Rails和Selenium),安装、管理、编写插件,Rails的生产部署、配置和Capistrano等内容。  本书详细讨论了Rails的程序代码并通过分析Rails中的代码片段来深入解释它的功能,同时,本书部分章节也摘录了一些API文档中的内容,使读者能够快速地找到对应的API文档、相关的示例代码以及深入的解析说明。  本书是Rails的权威参考书,适合对Rails已经有一定了解的开发人员学习和使用。

作者简介

Obie Fernandez是一位广为人知的技术行业领袖和独立咨询师。从20世纪80年代获得第一台Commodore VIC-20开始,他就一直在从事各种黑客工作。20世纪90年代中期,他终于找到了自己的位置,成为第一代Java企业项目的编程师。他于1998年移居到美国乔治亚州亚特兰大市,并作为当地新兴企业MediaOcean的首席架构师而闻名。他还成立了Extreme Programming(后改名为Agile Atlanta)用户社团,并在该社团担任了几年的主席和组织人。

书籍目录

第1章 Rails环境与配置 第2章 运用控制器 第3章 路由 第4章 REST,资源和Rails 第5章 探究路由选择 第6章 运用ActiveRecord 第7章 ActiveRecord关联 第8章 ActiveRecord验证 第9章 ActiveRecord的高级技巧 第10章 ActionView 第11章 辅助方法 第12章 Ajax on Rails 第13章 Session管理 第14章 登录与认证 第15章 XML和ActiveResource 第16章 ActionMailer 第17章 测试 第18章 RSpec on Rails 第19章 用插件扩展Rails 第20章 Rails生产环境配置 第21章 Capistrano 第22章 后台进程 附录A ActiveSupport API参考 附录B Rails概要 

章节摘录

插图:RubyonRails框架的作用在于彻底简化了开发过程,使专业开发人员能够更加专注子那些最重要的东西,即企业价值的传递。这是第一本全面而权威的指南,教你如何利用Rails开发高质量的软件。在本书中,Rails的先驱开发者ObieFemandexz及他的专家团队将会为你详细阐述全部的RailsAPI,以及Ruby的各种语法、设计方法、库和插件,正是它们令Rails变得如此珍贵。他们凭借着自己丰富的经验,向软件开发团队展示他们真正面对的挑战所在,并向大家展示了如何使用Rails工具、怎样达到最佳使用效果,以及如何构建用户确实喜欢的杰出程序。通过使用详细的代码示例,Obie系统地说明了Rails的主要功能和各个子系统。他向读者展现了先进的编程技巧;介绍了开源程序库,使得Rails的应用变得更加容易;并且提供了有关测试和产品部署的真知灼见。它让我们一起深入Rails的代码库,探索Rails为什么这样工作,以及怎样可以让它按照你想要的方式进行工作。幸运的是,那些数据库查询的每个语句执行的非常快,每个耗时在0,0015秒左右。这是因为MySql执行短小的SELECF语句非常陕,而且我的Rails进程和数据库运行在相同的物理机器之上。不过,这些积聚成堆的N+1查询以及它们的快速增加已造成了对性能的侵蚀。除了我提到的这些不利因素,还会面对严重的性能问题需要解决。如果数据库运行在独立的机器上,对我来说每个查询的网络延迟处理问题将特别严重,N+1查询问题是不可能消失的。多数时候可以在特定的find方法中通过正确的使用:include选项来缓解这个问题。分层一个设计良好的MVC应用程序会遵循相关规定,与渲染任务(视图)相比,必然要在逻辑层(模型对象)中进行数据库操作。一般而言,要在控制器中从数据库中加载所有渲染所需数据。在Rails里,是通过在控制器中针对所需数据对模型对象进行查询并将数据存储于实例变量中再由视图渲染宋完成的。普遍认为在对数据库访问期间进行渲染是一个不好的习惯。因为直接在模板代码中调用find方法违背了固有的分层概念,而且代码的可维护性变得非常糟糕。然而,在数据库访问期间进行视图渲染将会使很多隐含的机会蔓延在你的代码中,模型对象的封装或许会对关联的数据进行延迟加载(Lazyloading)。我们可以称之为坏习惯?这很难说清楚。

编辑推荐

《Rails之道》:Ruby on Rails经典参考用书Jolt年度技术图书大奖获得者深入讲解Ruby on Rails框架中的各种知识点和应用新特性Rails各种API函数参考大全Ruby on Rails中文社区倾情奉献一本书,让你参透Ruby on Rails的世界RubyonRails框架的作用在于彻底简化了开发过程,使专业开发人员能够更加专注子那些最重要的东西,即企业价值的传递。这是第一本全面而权威的指南,教你如何利用Rails开发高质量的软件。在《Rails之道》中,Rails的先驱开发者ObieFemandexz及他的专家团队将会为你详细阐述全部的RailsAPI,以及Ruby的各种语法、设计方法、库和插件,正是它们令Rails变得如此珍贵。他们凭借着自己丰富的经验,向软件开发团队展示他们真正面对的挑战所在,并向大家展示了如何使用Rails工具、怎样达到最佳使用效果,以及如何构建用户确实喜欢的杰出程序。通过使用详细的代码示例,Obie系统地说明了Rails的主要功能和各个子系统。他向读者展现了先进的编程技巧;介绍了开源程序库,使得Rails的应用变得更加容易;并且提供了有关测试和产品部署的真知灼见。它让我们一起深入Rails的代码库,探索Rails为什么这样工作,以及怎样可以让它按照你想要的方式进行工作。《Rails之道》将帮助你解决以下问题:增强你作为网络开发人员的工作效率令你体会到用Ruby on Rails进行编程的快乐学习Rails 2.0的新内容"用TestUnlt和 Rspec促进设计进程,实现长期维护理解并管理Rails C ontrollers中复杂的项目流程利用Rails的支持设计完美的API掌握高深的Rails路由概念和技术对Rails路由检测并排错将 AcoveRecord对象关系映射的功能发挥到极致在你的Rails软件中运用Ajax 在你的软件中安装登录和授权系统用最好的第三方插件来扩展Rails,甚至自己编写插件程序通过ActionMaJler:在你的软件中整合电子邮件服务选择合适的Rails产品配置用Capistrano优化部署

图书封面

图书标签Tags

评论、评分、阅读与下载


    Rails之道 PDF格式下载


用户评论 (总计6条)

 
 

  •   很适合开发人员和初学者学习,是一本很好的参考手册!
  •   书很好,送的也挺快的
  •   由于Rails本身的变化较快,导致很多中文资料比较滞后,不过作为初学者看看这些老书还是很有帮助的。
  •   唉,咋就这么恶劣
  •   实在是太恶劣了,浪费了我68.5
  •   纸张装订太差,翻了几页看了一下,感觉里面的纸张就要掉了一样。多半是次品或者是本来做工就很差。
 

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

京ICP备13047387号-7