出版时间:2008 出版社:电子工业出版社 作者:骆古道、王大力、董彬、黄翀与苏锐 页数:307
Tag标签:无
前言
众所周知,Rails框架从诞生之日起,就没有一个强大的公司充当其坚实的后盾。尽管如此,在Rails框架近几年的发展成熟过程中——对于开发者来说——依然显现出了不可思议的吸引力和极其强大的生命力。Rails的普及流行,并非因为这项技术被夸大或高估。毫无疑问,这是源自于社区的支持,源自于社区开发者对于Rails框架的认可。Rails框架发展到今天,一直是依靠社区的力量推动着Rails不断向前迈进,也正是来自于社区的反馈,影响着Rails框架未来发展的方向。本书之所以出版,归根结底,同样是源自于Rails开发者社区。在Web开发过程中,对于那些希望在Rails之路深入下去的程序员来说——不管你是否顺利——总会有这样那样的问题会突然间跳出在你面前,在未曾打招呼的情况下,便把你在之前成功运行的示例中获得的那点成就感无情蚕食掉。于是,当我们在帮助手册中一无所获时,便开始寄期望于社区,希望找到被同样的问题折磨过,又坚强探索出路的人,期望他们留下经验与启示,让我们的编程道路经历荆棘坎坷之后最终能涅槃重生。如同你预想的那样,本书的作者皆来自于开发者社区,或者是在技术博客上的执着耕耘者,或者就是你曾在技术论坛中常会遇见却又从未留意的一个普通ID,就是这些平凡的技术布道者,构筑起了你的坚强后盾。小小的一株草无法成长为参天大树,但是将我们的力量凝聚在一起,这些点点滴滴,会让你感觉你不是一个人在战斗,在你摔倒的地方,同样曾有人顽强地爬起来开拓前行。有趣的是,在本书策划之前,我与其他5位作者从未谋面,但却在技术论坛或在GoogleReader中订阅的博客里神交已久。有时我会想,为了一个共同的目标,一群志趣相投的人联系在一起共同努力,必然是一件非常有价值的事情,目标实现时的感觉也必将是非常奇妙的。于是,经历数月的辛勤撰写,便有了你手上的这本书。记得关于书稿写作的几次讨论,都是在北大东门的万圣书园进行的。万圣书园一直被誉为学子的精神家园,二楼的“醒客咖啡”(Thinker‘sBar)安静舒适,博文视点的周筠老师更是对此处偏爱有加,常约作者来此商讨书稿。从目录讨论到章节划分,从分工撰写再到统稿审校,本书的几位作者利用有限的时间和精力,都力争做到自己的最好水平。参与书籍撰写的骆古道、王大力、董彬、黄翀、苏锐,每人在Rails开发的不同方面都各有专攻,也各有关注擅长的领域,字里行间,已点滴体现在书稿之中。骆古道是一位令人尊敬的技术布道者,在Ruby语言和Rails技术普及方面一直笔耕不辍,尽管身居德国,但在本书的写作中,一直与其他作者保持邮件交流与联系,骆老师对于Rails及其发展趋势的判断,许多观点都十分独到。一直活跃在国内Rails社区中的王大力(bd7lx),在我刚开始进入Rails世界起,就从他的技术传播中获益良多。在本书统稿审校的过程中,这位铁道播客也给了我很多指导与帮助。曾经以Rails创业的董彬也是一位技术先行者,还记得他把写的书稿用LaTex排版成漂亮的文档,还记得在CSDN英雄会上与他讨论书稿的进度,一切恍若昨日。与董彬同在FreeWheel共事的黄翀(hideto)在博客上也撰写了大量的Rails框架实践的文章。在书籍撰写过程中,为“多背一公斤”进行Rails站点开发并且热心公益的苏锐,顺利迎来小宝宝亮亮的出生,看见他在博客“一家四口”中对小宝宝专注的记录和细心的照顾,真为他们全家由衷地感到幸福。从本书开始策划到终稿出版的这个过程中,还要感谢博文视点的编辑团队。感谢博文视点的杨绣国(lisa)编辑在文字加工与规范化方面所做的工作,她一次次地发来书稿的QA以帮助作者修改校正用词的不当之处;感谢陈宜从策划编辑的角度对文字提出的修改建议;感谢为这本书设计封面、进行营销推广,以及进行校对排版的各位博文朋友。正是博文视点编辑团队认真细致的工作,才有了这本书今天的面貌。我谨代表本书的六位作者,感谢同样在社区中给予我们无私帮助的开发者们,正是你们智慧的结晶,构建了这本书的坚实基础。正如技术的更新换代永无止境,Web开发也同样是一个永远也说不尽的话题。我们试图让捧在你手上的这本书,涵盖使用Rails框架进行Web开发的方方面面,但我们也清楚地认识到,本书还远不是一本Web开发的百科全书,仅希望书中包含的内容,可以涵盖使用Rails框架进行Web开发过程中关键的环节,当你在开发中遇到问题时能给予启迪,成为你在深入Rails开发过程中的有力帮手。好了,让我们翻开接下来的章节,一同踏上愉悦的Rails开发之旅。旅途中所遇到的任何挫折,请不要犹豫,直接用邮件——各位作者的联系方式已在“关于本书”部分附上——与我们联系,将问题反馈给我们。作者朋友就在你身边。
内容概要
本书基于Ruby on Rails,详细讲述Web开发中所涉及的各个主要环节,并且将作者在开发过程中积累的经验和技巧与读者分享。在本书的每个章节中,都有与内容配合的详细实例,帮助读者快速理解并掌握使用Ruby on Rails进行Web开发的步骤。 Web开发的相关技术自身在不断发展中,Ruby语言也在不断的完善和进步。本书的作者们试图紧跟Rails框架和Ruby语言的最新发展所带来的新特性、新方法、新尝试,在动态的大环境中带领读者解读与Web 2.0站点开发关联性较强的技术,期望将最实用和最新鲜的开发技术推荐给读者。 与其他中文版的Ruby on Rails图书不同,本书并没有将基础的Ruby和Rails知识进行罗列,而是直接进入主题。全书从网站实际需求出发,分章节为读者讲解Web开发时所涉及的具体技术。同时,由于动态语言技术发展速度飞快,就Rails框架本身来说,每一个新版本的发布也随之带来众多细节方面的更新和改动。为了帮助读者摆脱死记硬背语言和框架细节的问题,作者们通过书中大量的贴近实际需求的例子,激发起读者实际动手的欲望和信心,促使他们在实践和锻炼中提升能力、懂得如何去实现代码功能,最终达到使读者们可以有针对性的、合理的提出解决方案的目的。
书籍目录
前言 第1章 Rails框架概述 1.1 RUBY语言的概述 1.1.1 Ruby语言及其发展过程 1.1.2 Ruby语言的软件开发优势 1.2 RAILS框架的历史和现在 1.2.1 Rails框架的发展过程 1.2.2 Rails框架2.0的主要特性 1.2.3 Rails框架开发者的创新理念 1.3 RAILS框架及其插件PLUGINS和软件包GEM 1.3.1 什么是插件Plugins 1.3.2 什么是软件包Gem 1.3.3 Rails框架的重要Plugins和Gem及其应用技术 1.4 RAILS框架的未来 1.4.1 Rails框架2.1.x以后版本的重要特性 1.4.2 Rails框架未来发展趋势 1.4.3 介绍在虚拟机上的Rails框架第2章 用户管理 2.1 系统环境 2.2 预备知识 2.2.1 用RSpec进行BDD开发 2.2.2 Rails 2.0 2.2.3 make_resourceful 2.2.4 HAML模板语言 2.2.5 插入代码 2.2.6 用户故事 2.3 使用RESTFUL AUTHENTICATION GENERATOR 2.4 构建初始项目 2.5 使用TDD开发USER模型 2.5.1 User模型的Fixtures 2.5.2 Model的开发 2.5.3 密码验证 2.6 用户注册 2.6.1 删除默认Route 2.6.2 创建Controller 2.6.3 使用TDD开发Controller 2.7 用户登录 2.8 访问控制 2.9 REMEMBER ME的实现 2.10 邮件激活 2.10.1 Model的开发 2.10.2 发送激活邮件 2.10.3 编写Controller 2.11 密码重设 2.11.1 修改Model 2.11.2 发送邮件 2.11.3 编写Controller和View 2.12 小结第3章 内容展示 3.1 定制FORM及FORM控件 3.2 定制TABLE及TABLE的分页、排序 3.3 生成多种格式的REPORT 3.4 富文本编辑器 3.4.1 TinyMCE 3.4.2 FCKEditor 3.5 丰富的UI组件 3.5.1 In Place Edit 3.5.2 Snap Shots与iTechTag 3.5.3 Mp3 Player、Image SlideShow、Flash Player 3.6 MULTI MODEL的表单 3.7 小结第4章 缓存 4.1 内建的CACHE机制 4.1.1 页面缓存Page Cache 4.1.2 Action Cache 4.1.3 Fragment Cache 4.1.4 Query Cache 4.1.5 缓存文件的存储方式 4.1.6 静态文件缓存 4.2 MEMCACHED及在RAILS中的应用 4.2.1 Ruby与Memcached 4.2.2 Rails中使用Cached_model 4.2.3 cache_fu 4.2.4 Nginx与Memcached 4.3 MYSQL QUERY CACHE 4.4 小结第5章 上传文件和图片处理 5.1 ATTACHMENT_FU安装 5.2 RMAGICK安装 5.3 数据库定义 5.4 MODEL的开发 5.5 CONTROLLER和VIEW的开发 5.5.1 文件上传表单 5.5.2 显示上传图片 5.6 生成副本 5.6.1 添加thumbnails参数 5.6.2 使用RMagick编写副本生成 5.7 AJAX方式上传文件 5.7.1 让Controller更加苗条 5.8 小结第6章 搜索 6.1 基本搜索 6.2 全文搜索 6.2.1 acts_as_ferret 6.2.2 acts_as_sphinx 6.2.3 acts_as_solr 6.2.4 acts_as_searchable 6.2.5 acts_as_fulltextable 6.3 与第三方服务集成的搜索 6.4 搜索提示 6.5 渐增式搜索 6.6 小结第7章 RSS与Trackback 7.1 什么是RSS 7.2 如何生成RSS 7.3 如何解析RSS 7.4 什么是TRACKBACK 7.5 如何实现TRACKBACK 7.6 小结第8章 地图服务 8.1 地图服务及成功站点示例 8.1.1 Google Maps地图服务 8.1.2 Google Maps影像组织方式 8.1.3 站点示例 8.2 GOOGLE MAPS API 8.2.1 Google Maps API概述 8.2.2 通过API Key调用Google Maps地图数据 8.2.3 Google Maps中使用KML 8.2.4 Google Maps静态地图 8.3 地图服务提供商 8.3.1 微软Live地图 8.3.2 Yahoo!地图及Fire Eagle应用 8.4 GOOGLE MAPS与谷歌地图的集成 8.5 地图浏览控制 8.5.1 GMap2对象和基本方法 8.5.2 常用地图操作方法 8.5.3 为用户事件添加响应处理 8.6 在RAILS应用中嵌入地图 8.6.1 Rails地图应用任务描述 8.6.2 Rails地图插件 8.6.3 创建Rails应用程序与数据模型 8.6.4 安装测试Rails插件 8.6.5 自动地址译码 8.6.6 IP地址译码 8.7 通过RAILS将地图与业务数据关联 8.7.1 创建location控制器 8.7.2 增加新的字段 8.7.3 配置Cartographer插件 8.7.4 控制器 8.7.5 进一步的功能 8.8 定义自己的地图浏览客户端 8.8.1 OpenLayers概述 8.8.2 OpenLayers中使用Google数据 8.9 小结第9章 Mashup 9.1 MASHUP成功站点示例 9.1.1 Mashup概述 9.1.2 站点示例 9.1.3 Mashup组织模式 9.2 常见API使用方式 9.2.1 Google Ajax Search API 9.2.2 Google Mashup 编辑器 9.2.3 Flickr 9.2.4 Snap Shots 9.3 RUBY的MASHUP资源 9.4 快速上手示例 9.4.1 YouTube视频Mashup 9.4.2 Rails的Mashup应用任务描述 9.4.3 安装测试YouTube的Rails插件 9.4.4 创建新的Mashup应用项目 9.5 开放API平台 9.5.1 开放的API平台 9.5.2 开放API实现技术简介 9.6 小结第10章 部署演练 10.1 部署思路和原则 10.1.1 认识与思考 10.1.2 流行过的趋势 10.1.3 部署与安装:误区雷区 10.1.4 原则要素 10.2 动手实验准备 10.2.1 技术选择 10.2.2 部署工具 10.3 部署初体验 10.3.1 将Webrick送到生产环境 10.3.2 自动工具Capistrano + Apache 前端 Fcgi + Mysql 10.3.3 Cap + Apache proxy + mongrel 10.3.4 Apache + mod_rails 10.4 不拘一格的部署新思维 10.4.1 JRuby环境的Rails简易部署 10.4.2 IIS 7 fcgi + SQL server 10.4.3 Linux集成生产环境比对分析 10.4.4 打包Rails成为exe直接给客户做产品原型演示 10.4.5 虚拟机技术和负载均衡 10.4.6 Heroku 直接在网上给Rails安家 10.4.7 Nginx + mongre自动化部署,手动安装及性能扩展 10.5 部署后的监控调优和治理活动 10.6 小结
章节摘录
插图:第1章 Rails框架概述1.1 Ruby语言的概述1.1.1 Ruby语言及其发展过程在这一节中我们将简单介绍Ruby语言定义及其发展过程。Ruby语言是什么?它的最重要的特点是什么呢?Ruby语言的官方网站给翻译过来是:Ruby是一门计算机程序语言,它是动态的和开源的。该语言的最大特点是简单和富有效率,其语法使得人们能够以一种自然的方式来阅读和编写程序代码。这些特性在下面将要介绍的Rails框架中表现得最为出色和成功。Rails是RubyOilRails(ROR)的简称,它是以当前最流行的Ruby语言为基础的、基于浏览器的开发网络应用软件的框架。它们之间的发展过程有着密切的关系。从时间来看,Ruby语言经历了三个阶段的发展过程。第一阶段是1993年至2000年,在这个阶段中,Ruby语言主要是在日本流行,尽管在日本具有一定的影响力,但是对Ruby语言而言,其发展速度还是十分有限的,毕竟英语世界还是软件业的最重要的势力范围。2000年至2004年是Ruby语言的第二阶段,这是Ruby语言最重要的发展阶段,而且也是Rails框架的孕育期,Rails框架的开发者利用了Ruby语言开发基于浏览器的网络软件,并在此基础上形式了Rails框架。这一阶段对以英语为第一语言的国家有较大影响,但是真正使Ruby语言得以在全世界推广还是从2004年开始的,这是因为2004年Rails框架正式发行了,这是Ruby语言发展的第三阶段。Rails框架的成功有其自身的特点,但是Ruby语言的力量是一个不可忽视的因素。Ruby语言正在成为一门主流的软件开发语言。
编辑推荐
《Web开发大全:Ruby on Rails版》由电子工业出版社出版。
图书封面
图书标签Tags
无
评论、评分、阅读与下载