当前位置:首页 > 工业技术
Ruby for Rails中文版
Ruby for Rails中文版

Ruby for Rails中文版PDF电子书下载

工业技术

  • 电子书积分:13 积分如何计算积分?
  • 作 者:(美)David Black著;吴畅欣,张明生译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2007
  • ISBN:7115161615
  • 页数:386 页
图书介绍:本书采用广度优先的方法展开它的话题,分4个部分,第一部分概览Ruby和Rails的编程环境,第二部分和第三部分详细介绍Ruby语言及其特性,通过Rails应用示例说明了Ruby的特性以及有关Ruby的重要信息,最后一部分给出了应用实例讲述如何应用前面所学的知识使用Ruby开发Rails应用。本书在 Ruby 语言和 Rails 框架之间进行阐述,在书中的某一特定章节或某一特定部分中,不管侧重哪个部分,都不会脱离Ruby 和 Rails。
《Ruby for Rails中文版》目录
标签:中文版

第一部分 Ruby/Rails全景 3

第1章 Ruby工作原理 3

1.1 编写Ruby程序的基本过程 3

1.1.1 准备工作 4

1.1.2 Ruby起步指南 4

1.1.3 方法调用和Ruby对象的简单介绍 5

1.1.4 编写和保存示例程序 6

1.1.5 提交Ruby程序 7

1.1.6 键盘和文件输入 8

1.1.7 一个程序,多个文件 11

1.2 激活解释器的方法 12

1.2.1 命令行开关 12

1.2.2 进一步了解交互式Ruby解释器irb 15

1.3 Ruby扩展和程序库 16

1.3.1 使用标准扩展和库 16

1.3.2 使用C的扩展 17

1.3.3 编写扩展和库 17

1.4 剖析Ruby编程环境 18

1.4.1 Ruby源代码的布局 18

1.4.2 Ruby安装目录导航 19

1.4.3 重要的标准Ruby工具和应用程序 20

1.5 小结 23

第2章 Rails工作原理 25

2.1 深入Rails框架 25

2.1.1 从框架使用者的角度看应用开发 26

2.1.2 介绍MVC框架的概念 27

2.1.3 亲身体验MVC 27

2.2 分析Rails的MVC实现 28

2.3 全程开发Rails应用 30

2.3.1 介绍音乐店应用——R4Rmusic 30

2.3.2 为音乐店领域的第一遍迭代建模 31

2.3.3 动作的识别和编程 36

2.3.4 设计视图 38

2.3.5 连接应用程序 43

2.4 全程跟踪Rails的运行 44

2.4.1 阶段1:服务器到分发器 45

2.4.2 阶段2:分发器到控制器 46

2.4.3 阶段3:执行控制器动作 46

2.4.4 阶段4:填充视图 48

2.5 小结 48

第3章 了解Ruby前提下的Rails开发 49

3.1 了解代码在做什么的第一次尝试 50

3.1.1 把Rails看作领域特定语言 50

3.1.2 以配置的风格编写程序代码 53

3.1.3 YAML和实际是编程的配置 54

3.2 开始用Ruby在代码中做更多的事 56

3.2.1 给控制器增加功能 57

3.2.2 部署Rails的辅助文件 58

3.2.3 给模型增加功能 60

3.3 实现与应用相关的技能和任务 61

3.3.1 将遗留数据转换为ActiveRecord 62

3.3.2 基于irb的Rails应用控制台 65

3.4 小结 66

第二部分 Ruby构造块 69

第4章 对象和变量 69

4.1 从“事物”到对象 69

4.1.1 介绍面向对象编程 70

4.1.2 对象 70

4.1.3 更真实的对象建模:入场券的行为 74

4.2 对象的固有行为 78

4.2.1 用object_id方法唯一地标识对象 79

4.2.2 用respond_to?方法查询对象的能力 80

4.2.3 用send方法给对象发送消息 81

4.3 必需参数、可选参数以及默认值参数 82

4.3.1 必需参数和可选参数 82

4.3.2 参数的默认值 82

4.3.3 参数的顺序 83

4.4 局部变量和变量赋值 84

4.4.1 深入分析变量赋值 85

4.4.2 局部变量和看起来像局部变量的东西 87

4.5 小结 87

第5章 用类组织对象 89

5.1 类和实例 89

5.1.1 第一个类 90

5.1.2 实例变量和对象状态 93

5.2 设置方法 95

5.2.1 方法名中的等号 96

5.2.2 ActiveRecord的属性和其他以等号结尾的方法的应用 97

5.3 属性和attr_*方法族 100

5.3.1 自动生成属性操作方法 100

5.3.2 一生二(获取方法/设置方法) 102

5.3.3 attr_*方法小结 102

5.4 类方法和Class类 103

5.4.1 类也是对象 103

5.4.2 什么时候以及为什么编写类方法 104

5.4.3 阐明类方法和实例方法 105

5.4.4 Class类和Class.new 106

5.5 进一步学习常量 107

5.5.1 常量的基本用法 107

5.5.2 常量的重新赋值和常量的改变 108

5.6 继承 109

5.6.1 继承和Rails设计 110

5.6.2 Ruby对象的天性和后习特性 111

5.7 小结 113

第6章 模块和程序组织 114

6.1 创建和使用模块的基础知识 114

6.1.1 封装似栈特性的模块 115

6.1.2 将模块混含到类中 116

6.1.3 进一步发挥模块作用 118

6.2 模块、类和方法查找 120

6.2.1 方法查找的基本说明 120

6.2.2 多次定义同样的方法 123

6.2.3 用super提升方法查找路径 124

6.3 类/模块的设计和命名 126

6.3.1 混含和/或继承 127

6.3.2 Rails源代码和样板代码中的模块组织 129

6.4 小结 131

第7章 默认对象和作用域 132

7.1 理解当前对象或默认对象self 133

7.1.1 谁成为self,在什么位置成为self 133

7.1.2 self作为消息的默认接收者 137

7.1.3 实例变量和self 139

7.2 确定作用域 140

7.2.1 全局作用域和全局变量 141

7.2.2 局部作用域 143

7.2.3 常量的作用域和解析 146

7.3 部署方法访问权限规则 147

7.3.1 私有方法 148

7.3.2 私有方法作为ActionController的访问保护 150

7.3.3 保护方法 151

7.4 编写和使用顶层方法 152

7.4.1 定义顶层方法 153

7.4.2 预定义的(内建的)顶层方法 153

7.5 小结 154

第8章 控制流技术 155

8.1 条件代码执行 156

8.1.1 if关键字及相关构造 156

8.1.2 条件修饰语 158

8.1.3 case语句 159

8.2 用循环重复动作 161

8.2.1 用loop方法实现无条件循环 162

8.2.2 用while和until关键字实现条件循环 163

8.2.3 基于值列表的循环 164

8.3 代码块、迭代器和yield关键字 165

8.3.1 匿名调用代码块的基础知识 165

8.3.2 执行多个迭代 167

8.3.3 使用不同的代码块 168

8.3.4 关于for的更多内容 168

8.4 错误处理和异常 169

8.4.1 抛出异常和营救异常 169

8.4.2 显式抛出异常 171

8.4.3 创建异常类 172

8.5 小结 173

第三部分 内建类和内建模块 177

第9章 内建类和模块基础知识 177

9.1 Ruby的字面构造器 178

9.2 反复出现的语法糖衣 178

9.3 改变或者不改变其接收者的方法 180

9.3.1 改变接收者的方法的基本知识 181

9.3.2 感叹号!方法 182

9.3.3 ActiveRecord对象中特殊化的和扩展了的改变接收者的行为 182

9.4 内建的和定制的to_*(转换)方法 183

9.5 再论迭代器 185

9.6 布尔状态、布尔对象和空对象 186

9.6.1 作为状态的true和false 186

9.6.2 作为对象的true和false 188

9.6.3 特殊对象nil 189

9.7 比较两个对象 190

9.7.1 相等性测试 190

9.7.2 比较和Comparable模块 191

9.8 列出对象的方法 192

9.9 小结 193

第10章 标量对象 195

10.1 使用字符串 195

10.1.1 字符串基础知识 195

10.1.2 字符串操作 197

10.1.3 比较字符串 201

10.2 符号及其用法 202

10.2.1 符号与字符串的关键的不同点 202

10.2.2 重新讲解Rails风格的方法参数 203

10.3 数值对象 204

10.3.1 数值类 204

10.3.2 进行算术运算 205

10.4 时间和日期 206

10.5 小结 209

第11章 集合、容器和可枚举性 210

11.1 数组和散列的比较 210

11.2 使用数组 211

11.2.1 创建一个新数组 211

11.2.2 插入、检索和删除数组元素 212

11.2.3 合并数组 214

11.2.4 数组转换 216

11.2.5 数组迭代、过滤及查询 217

11.2.6 从ActiveRecord集合学习Ruby经验 219

11.3 散列 221

11.3.1 创建一个新的散列 222

11.3.2 插入、检索和删除散列键值对 222

11.3.3 合并散列 224

11.3.4 散列转换 225

11.3.5 散列的迭代、过滤和查询 226

11.3.6 Ruby和Rails方法调用中的散列 228

11.4 集合的中心:Enumerable模块 230

11.4.1 通过each获得可枚举性 230

11.4.2 可枚举的字符串 232

11.5 集合排序 233

11.5.1 排序和Comparable模块 235

11.5.2 在代码块中定义排序顺序 235

11.6 小结 236

第12章 正则表达式和基于它的字符串操作 237

12.1 什么是正则表达式 237

12.1.1 给了解正则表达式的人的话 238

12.1.2 给所有人的话 238

12.2 编写正则表达式 238

12.2.1 正则表达式的字面构造方法 239

12.2.2 构造一个模式 240

12.3 关于匹配和MatchData的更多内容 242

12.3.1 用小括号来捕获子匹配 242

12.3.2 匹配成功和匹配失败 243

12.4 更多的正则表达式技术 245

12.4.1 量词和贪婪性 245

12.4.2 锚和前视断言 247

12.4.3 修饰语 249

12.4.4 字符串与正则表达式之间的转换 249

12.5 使用正则表达式的常见方法 251

12.5.1 String#scan 252

12.5.2 String#split 252

12.5.3 sub/sub!和gsub/gsub! 253

12.5.4 grep 254

12.6 小结 255

第13章 Ruby动态特性 256

13.1 单例类的位置和角色 257

13.1.1 单例方法在何处定义 257

13.1.2 直接检查和修改单例类 258

13.1.3 方法查找路径上的单例类 259

13.1.4 更深入地学习类方法 262

13.2 eval方法族 263

13.2.1 eval 263

13.2.2 instance_eval 264

13.2.3 最有用的eval族方法:class_eval 265

13.3 可调对象 266

13.3.1 Proc对象 267

13.3.2 用lambda关键字生成匿名函数 269

13.3.3 再论代码块 270

13.3.4 作为对象的方法 271

13.4 回调方法和钩子方法 273

13.4.1 用method_missing拦截不能识别的消息 274

13.4.2 用Module#included捕捉混含操作 275

13.4.3 用Class#inherited拦截继承 276

13.4.4 Module#const_missing 278

13.5 覆盖和增加核心功能 278

13.6 小结 280

第四部分 结合Ruby和Rails 283

第14章 再次为R4Rmusic应用领域建模 283

14.1 跟踪ActiveRecord模型实例的功能 284

14.1.1 模型实例功能概览 284

14.1.2 继承的和自动获得的ActiveRecord模型实例行为 284

14.1.3 通过关联半自动获得的行为 287

14.2 改进领域模型 289

14.2.1 抽取和增加模型(publisher和edition) 289

14.2.2 instruments模型和多对多关系 291

14.2.3 为使用建模:顾客和订单 294

14.3 小结 297

第15章 通过编程改进ActiveRecord模型 298

15.1 软模型改进与硬模型改进 299

15.2 模型的软编程改进 301

15.2.1 通过软改进细化Work模型 302

15.2.2 为顾客的业务建模 303

15.2.3 改进composer 304

15.2.4 对比软改进过程中的Ruby和SQL 305

15.3 硬模型改进 306

15.3.1 美化字符串属性 306

15.3.2 计算作品的年代 310

15.3.3 剩余的顾客业务 314

15.4 用类方法扩展模型功能 318

15.5 小结 320

第16章 改进控制器和视图 321

16.1 为视图模板定义辅助方法 322

16.1.1 组织和访问定制的辅助方法 322

16.1.2 为R4RMusic定制的辅助方法 324

16.2 编码和部署部分视图模板 326

16.2.1 剖析主模板 326

16.2.2 在欢迎视图模板中使用部分模板 327

16.3 更新主控制器 331

16.4 加入顾客注册和登录动作 333

16.4.1 登录和注册部分模板 333

16.4.2 登录和保存会话状态 334

16.4.3 用before_filter看守动作 335

16.4.4 实现注册功能 337

16.4.5 编写顾客注销脚本 338

16.5 处理顾客订单 339

16.5.1 view_cart动作和模板 339

16.5.2 查看和购买一个版本 340

16.5.3 定义add_to_cart动作 341

16.5.4 完成订单 342

16.6 通过动态代码使页面个人化 342

16.6.1 从排名到喜好 343

16.6.2 实际使用中的favorites特性 344

16.7 小结 345

第17章 探索Rails源代码的技术 346

17.1 探索技术1:提炼信息 346

17.2 探索技术2:跟踪Ruby 348

17.2.1 选择一个起点 348

17.2.2 正确地在岔路做出选择 348

17.2.3 belongs_to的足迹 349

17.2.4 belongs_to实现机制的翻译 352

17.3 探索技术3:查阅文档 353

17.4 小结 357

附录A Ruby和Rails的安装和资源 358

A.1 Ruby和Rails的在线资源 358

A.2 Ruby和Rails常见安装的说明 359

A.2.1 Windows下的One-ClickRuby和InstantRails安装 359

A.2.2 在*nix系统上从源代码开始安装 359

A.2.3 使用包管理器来安装Ruby 360

A.2.4 安装RubyGems包管理器 360

A.2.5 使用RubyGems安装Rails 361

索引 362

返回顶部