征服RUBY ON RAILS WEB开发技术详解PDF电子书下载
- 电子书积分:15 积分如何计算积分?
- 作 者:龚昕,张浩编著
- 出 版 社:北京:人民邮电出版社
- 出版年份:2007
- ISBN:7115155593
- 页数:461 页
1.1 Ruby概述 1
1.2 为什么选择Ruby 1
1.2.1 Ruby的优点 1
第1章 Ruby简介 1
1.2.2 Ruby可以做什么 2
1.2.3 Ruby和其他语言比较 3
1.2.4 大师们的回答 4
1.3 Ruby程序设计入门 4
1.4 有趣的入门程序 5
1.4.1 编写一个经典的“Hello world” 5
1.4.2 使用Math库进行计算 5
1.4.3 使用正则表达式进行数据匹配 5
1.4.5 打印金字塔 6
1.4.4 启动一个Internet Explorer 6
1.5 奇异的高级特性 7
1.5.1 动态绑定方法 7
1.5.2 迭代器和块 10
1.5.3 “方法未定义”也是技巧 12
第2章 搭建开发环境 14
2.1 Windows下的安装 14
2.2 Linux下的安装 15
2.3 编辑工具 16
2.3.1 SciTE 16
2.3.2 FreeRIDE 19
2.3.3 RadRails 20
2.3.4 UltraEdit 21
2.3.5 Eclipse+RDT 22
2.3.6 JEdit 23
2.4 辅助工具 24
2.4.1 rdoc(自动文档生成工具) 24
2.4.2 fxri(Ruby的MSDN) 26
2.4.3 gem(包管理工具) 27
2.4.4 rubyscript2exe(exe生成工具) 27
2.5 调试工具 28
第3章 基本类型 31
3.1 数字 31
3.1.1 概述 31
3.1.2 整数 32
3.1.3 浮点数 34
3.2.2 打印输出方法 35
3.2 字符串 35
3.2.1 概述 35
3.2.3 转义符 37
3.2.4 嵌入字符串 37
3.2.5 HERE文档 39
3.2.6 字符串常用方法 40
3.2.7 查找和赋值 40
3.2.8 字符串匹配和处理 42
3.3 范围 44
3.3.1 概述 44
3.3.2 范围实体的定义 45
3.3.3 范围操作 47
3.5.1 概述 48
3.5.2 数组的定义 48
3.5 数组 48
3.4 符号 48
3.5.3 并行赋值 50
3.5.4 常用方法 50
3.5.5 查找和赋值 51
3.5.6 迭代和复杂排序 53
3.6 哈希表 53
3.6.1 概述 53
3.6.2 定义哈希表 54
3.6.3 哈希表常用方法 55
3.6.4 查找和删除 56
3.6.5 迭代操作 58
3.6.6 导入/导出键和值 59
3.7.2 定义正则表达式 60
3.7.1 概述 60
3.7 正则表达式 60
3.7.3 则表达式操作 61
3.7.4 MatchData对象 61
第4章 变量与常量 65
4.1 变量 65
4.1.1 局部变量 65
4.1.2 全局变量 66
4.1.3 实例变量 66
4.1.4 类变量 67
4.1.5 特殊变量 68
4.2 常量 68
4.2.1 普通常量 68
4.2.2 类名和模块名常量 69
5.1 操作符表达式 70
第5章 表达式 70
5.3 逻辑运算符 71
5.2 赋值和并行赋值 71
5.3.1 and和 72
5.3.2 or和‖ 72
5.3.3 not和! 72
5.3.4 ^ 72
5.4 比较表达式 72
5.5 范围表达式 73
5.6 正则表达式 73
5.7 条件表达式 74
5.7.1 if表达式 74
5.7.2 if修饰句 75
5.7.3 unless表达式 75
5.7.5 case表达式 76
5.7.4 unless修饰句 76
5.8 循环控制块 77
5.8.1 while表达式 77
5.8.2 while修饰句 78
5.8.3 until表达式 78
5.8.4 until修饰句 79
5.8.5 for表达式 79
5.9 改变循环过程 80
5.9.1 break表达式 80
5.9.2 next表达式 80
5.9.3 redo表达式 81
5.9.4 retry表达式 81
5.9.5 return表达式 82
6.1.1 定义方法 83
6.1 方法和过程块 83
第6章 方法和异常处理 83
6.1.2 过程块(block) 84
6.1.3 yield迭代器 87
6.1.4 Proc迭代器 88
6.2 异常处理 89
6.2.1 抛出异常 90
6.2.2 捕获异常 90
6.2.3 恢复执行 91
6.2.4 定义异常 92
6.2.5 扩展异常类 93
6.2.6 Catch/Throw异常处理方式 95
7.1.1 定义类 96
7.1 定义类 96
第7章 模块和类 96
7.1.2 类的构造 97
7.1.3 super保留字 99
7.1.4 类的扩展 100
7.2 类方法 101
7.3 属性和成员变量 103
7.3.1 成员变量 103
7.3.2 定义属性 103
7.3.3 属性的本质 103
7.4 定义模块 104
7.4.1 定义模块 104
7.4.2 访问作用域 105
7.4.3 Mix-in糅合 106
7.5.1 模块访问限制 107
7.5 模块方法 107
7.5.2 实例/模块方法的转换 108
7.6 别名和定义 111
7.6.1 alias 111
7.6.2 undef 113
7.6.3 defined? 114
7.7 访问控制 114
7.8 加载模块 116
7.8.1 require方法 116
7.8.2 load方法 117
7.8.3 include方法 117
7.8.4 extend方法 118
8.1 BEGIN和END块 120
8.1.1 BEGIN和END块 120
第8章 高级特性 120
8.1.2 at_exit方法 121
8.2 一般非限定输入 121
8.3 命名约定 122
8.4 动态语言特性 123
8.4.1 method_missing方法 123
8.4.2 duck typing特性 126
8.4.3 Proc对象 126
8.4.4 动态绑定 127
8.4.5 eval动态执行代码 128
8.5 垃圾收集器 130
第9章 正则表达式 131
9.1 正则表达式规则 132
9.1.1 普通字符 132
9.1.2 简单的转义字符 132
9.1.3 匹配多种字符的方法 133
9.1.4 修饰匹配次数的方法 134
9.1.5 匹配模式 134
9.1.6 边界修饰符 135
9.1.7 选择匹配和提取匹配结果 136
9.2 正则表达式高级规则 136
9.2.1 贪婪模式 136
9.2.2 非贪婪模式 136
9.2.3 反向引用 137
9.2.4 正向预搜索 137
9.2.5 反向预搜索 138
9.2.6 匹配但不提取 138
10.1.1 文件和文件对象 139
10.1 文件和管道 139
第10章 常用模块 139
10.1.2 打开标志 140
10.1.3 Input/Output 142
10.1.4 File∷Stat 142
10.1.5 管道 143
10.2 目录 144
10.2.1 一个简单的目录操作的例子 144
10.2.2 目录操作的常用方法 144
10.3 时间 145
10.3.1 时间和日期 145
10.3.2 时间操作的常用方法 146
10.4 线程 149
10.4.1 创建线程 149
10.4.3 线程的同步 150
10.4.2 线程的操作 150
10.5 Win32API 154
10.5.1 导入接口函数 154
10.5.2 Win32API的使用技巧 155
10.6 WIN32OLE 155
10.6.1 连接到自动化组件 156
10.6.2 取得自动化组件信息 156
10.6.3 IDispatch接口支持 158
第11章 分布式Ruby 161
11.1 概述 161
11.2 简单的DRb例程 162
11.3 对象的持久化(Marshal) 163
11.3.1 什么是持久化 163
11.3.2 Marshal技术 164
11.3.3 实现对象的序列化 166
11.4 DRb对象 167
11.4.1 DRb对象 167
11.4.2 参数的传递 167
11.4.3 复杂对象的传递 170
11.4.4 未知对象的传递 172
11.5 DRb安全 174
11.5.1 屏蔽Eval操作 174
11.5.2 访问控制列表 175
11.6 分布式应用示例 177
11.6.1 分布式开发背景 177
11.6.2 分布式集群原理 177
11.6.3 分布式应用框架 179
第12章 数据库DBI 184
12.1 DBI概述 184
12.2.1 安装DBI 186
12.2 安装DBI 186
12.2.2 配置选项 187
12.3 一个简单的DBI程序 188
12.3.1 安装MySQL数据库 188
12.3.2 创建数据库表 189
12.3.3 DBI程序示例 191
12.3.4 事务处理 194
12.4 DBI函数和异常 196
12.4.1 函数库 196
12.4.2 异常 198
12.5.1 测量执行时间 201
12.5.2 打印表格式结果集 201
12.5 DBI∷Utils 201
12.5.3 打印XML格式结果集 202
12.6 ADO技术 203
第13章 测试框架 206
13.1 什么是测试 206
13.2 测试的内容 206
13.3 Ruby测试框架 207
13.3.1 测试框架 207
13.3.2 测试流程 209
13.3.3 断言 213
13.3.4 测试原理 224
13.3.5 其他模块 226
13.4 Excel测试实战 226
13.4.1 Excel自动化函数 226
13.4.2 Excel测试例程 228
13.5 本章小结 236
第14章 Ruby/C扩展 237
14.1 Ruby调用DLL 237
14.2 用C编写扩展库 241
14.2.1 为什么要用C编写扩展库 241
14.2.2 创建MyExtending扩展库 242
14.2.3 编译Ruby扩展库 243
14.2.4 Ruby和C的数据传递 247
14.3 C程序调用Ruby脚本 249
14.4 扩展MFC程序的示例 250
14.4.1 程序功能介绍 250
14.4.2 程序执行原理 251
14.4.3 源码分析 252
15.1.1 GLUT平台 268
第15章 图形和图像 268
15.1 利用OpenGL编写特效 268
15.1.2 OpenGL框架 269
15.2 ImageMagick库 274
15.2.1 简介 275
15.2.2 安装ImageMagick 275
15.2.3 安装RMagick 277
15.2.4 效果演示和函数列表 277
第16章 Ruby的Web应用框架Rails 287
16.1 Rails简介 287
16.1.1 什么是Rails 287
16.1.2 支持Rails的Web服务器 288
16.1.3 Rails应用程序目录结构 288
16.1.5 Rails的成功因素 289
16.1.4 Rails的特点 289
16.1.6 Rails支持的数据库 290
16.2 Rails应用开发的基本步骤 291
16.3 基于IDE方式的开发步骤 292
16.3.1 安装RadRails 292
16.3.2 RadRails的基本配置 293
16.3.3 启动Web Server测试默认生成的Rails应用 296
16.3.4 创建Web控制器HelloWorld 297
16.3.5 为Web控制器HelloWorld添加sayhello动作 299
16.3.6 为sayhello动作添加相应的视图 299
16.3.7 测试完成的Rails应用 300
16.4 模型模块Active Record 300
16.4.1 自动映射 301
16.4.4 数据有效性规则 302
16.4.2 通过简单的元语言宏定义模型对象之间的关系 302
16.4.3 通过简单的元语言宏聚合模型对象 302
16.4.5 通过Acts函数把记录转换为列表或树 303
16.4.6 通过回调函数定制模型对象的生存周期 303
16.4.7 监视模型对象的生存周期 304
16.4.8 支持数据库级别和对象级别的事务 305
16.4.9 从共享的连接上获取数据库数据 305
16.4.10 Log4r和Logger的支持 306
16.5 Action Pack介绍 306
16.6 控制器类ActionController详解 306
16.6.1 Rails预处理 306
16.6.2 Rails的路由原理 307
16.7.1 ActionView中的模板文件 308
16.7.2 RHTML模板 308
16.7 视图类ActionView 308
16.7.3 RHTML辅助模块简介 309
16.7.4 RHTML辅助模板:格式辅助模块 309
16.7.5 RHTML辅助模板:链接URL辅助模块 310
16.7.6 RHTML辅助模板:分页辅助模块 310
16.7.7 RHTML辅助模板:表单元素操作辅助模块 311
16.7.8 RXML模板 312
16.7.9 RJS模板介绍 313
16.8 Rails Web应用请求原理实例分析 314
第17章 项目报告提交系统 316
17.1 开发环境搭建 316
17.1.1 安装Rails 316
17.1.2 安装MySQL Server 319
17.2.1 创建一个新的Rails Web应用程序 320
17.2 创建第一个Rails应用 320
17.1.3 安装MySQL Administrator客户端程序 320
17.2.2 测试这个新的Web Rails应用 321
17.2.3 创建数据库MyStatusReport 322
17.2.4 为Rails应用配置数据库连接信息 323
17.2.5 创建数据库表Projects 323
17.2.6 创建数据库表Projects的模型 325
17.2.7 创建Web控制器来处理Project的处理请求 326
17.2.8 测试Project的处理请求 327
17.2.9 创建数据库表Reports 329
17.2.10 创建数据库表Reports的模型 330
17.2.11 创建Web控制器来处理Report的处理请求 331
17.2.12 测试Report的处理请求 332
17.2.13 运行原理分析 334
17.3 完善这个Rails应用 337
17.3.1 修改表结构 337
17.2.14 处理乱码问题 337
17.3.2 编辑模型 338
17.3.3 编辑Project控制器重载默认方法 339
17.3.4 编辑Report控制器重载默认方法 339
17.3.5 编辑Project视图 340
17.3.6 编辑Report视图 340
17.4 测试运行 342
第18章 用Rails发送E-mail 344
18.1 功能分析 344
18.2 基于Rails的实现原理 345
18.3 基于Rails的代码实现 346
18.3.1 创建应用程序骨架 346
18.3.2 创建邮件发送器骨架 348
18.3.3 创建Web控制器骨架 349
18.3.4 编辑模型类Web_mail.rb 351
18.3.5 编辑Web控制类 353
18.3.6 编辑视图 355
18.3.7 测试运行 356
第19章 用Rails开发基于Ajax的应用 357
19.1 Ajax入门 357
19.1.1 Ajax的含义 357
19.1.2 传统的Web开发模式 358
19.1.3 基于Ajax的开发模式 359
19.1.4 Ajax中的关键技术 359
19.2 Rails对Ajax的支持 361
19.2.1 模块ActionView∷Helpers∷AssetTagHelper 362
19.2.2 模块ActionView∷Helpers∷PrototypeHelper 362
19.3.2 用Rails实现“Hello World”的Ajax版本 363
19.3.1 用Rails开发Ajax应用的基本步骤 363
19.3 用Rails开发Ajax应用 363
19.2.3 模块ActionView∷Helpers∷JavaScriptHelper 363
第20章 开发基于Ajax的聊天系统 365
20.1 功能分析和设计思路 365
20.1.1 功能分析 365
20.1.2 设计思路 366
20.2 设计数据库 367
20.2.1 用户数据 367
20.2.2 聊天室数据 367
20.2.3 聊天内容数据 368
20.2.4 聊天室在线用户数据 368
20.3.1 创建Rail Web应用项目 369
20.3.2 创建数据库和配置数据库连接 369
20.3 Rails开发步骤 369
20.2.5 整个数据库表设计ER图 369
20.3.3 创建模型类 370
20.3.4 设置模型类之间的关联 371
20.3.5 给模型类添加业务逻辑处理 372
20.3.6 创建Web控制器WebChat,同时创建相应的视图模板 374
20.3.7 修改控制器代码,添加逻辑处理并修改相应的视图模板 374
20.3.8 修改统一的视图布局模板 382
20.3.9 测试运行 383
第21章 用Rails开发留言簿系统 384
21.1 功能分析和设计思路 384
21.1.1 浏览留言簿 384
21.1.2 浏览留言 385
21.1.3 新建留言 385
21.1.4 管理员查看留言列表 385
21.1.6 管理员新建留言 386
21.1.5 管理员修改留言 386
21.1.7 设计思路 387
21.2 设计数据库 387
21.3 Rails开发步骤 388
21.3.1 创建Rail Web应用项目 388
21.3.2 创建数据库和配置数据库连接 388
21.3.3 创建模型类 389
21.3.4 给模型类添加业务逻辑处理 389
21.3.5 给模型类添加验证逻辑处理 389
21.3.6 创建普通用户访问Web控制器guestbook 391
21.3.7 定义普通用户请求页面统一布局 391
21.3.8 添加逻辑处理并修改相应的视图模板完成页面输出 392
21.3.10 定义管理员请求页面统一布局 396
21.3.9 创建管理员访问Web控制器guestbookadmin 396
21.3.11 加逻辑处理并修改相应的视图模板完成页面输出 397
21.3.12 测试运行 401
第22章 用Rails实现地图应用系统 402
22.1 功能介绍和原理分析 402
22.2 开发准备工作 403
22.2.1 创建Rails Web应用项目 403
22.2.2 安装YM4R包 404
22.2.3 申请和配置Google Maps API 404
22.3 创建Web控制器Gwebmap及视图模板 405
22.4 实现Google Map地图显示功能 406
22.4.1 修改控制器代码添加逻辑处理 406
22.4.2 修改相应的视图模板 406
22.5 实现交通显示功能 408
22.5.1 添加按地面查找功能 408
22.4.3 测试完成的地图 408
22.5.2 修改控制器代码添加逻辑处理 409
22.5.3 远程控制器动作调用过程分析 410
第23章 用Rails开发Web Service服务 412
23.1 Rails对Web Service的支持 412
23.1.1 定义Web Service API 412
23.1.2 协议请求的分配模式 413
23.1.3 自定义WSDL生成 415
23.1.4 ActionWebService和UTF-8编码 416
23.2 功能分析和设计思路 416
23.3 数据库设计 416
23.4 开发步骤详解 418
23.4.1 新建Rails应用BookService 418
23.4.2 通过Web Service生成器创建Web Service 418
23.4.3 配置数据库连接信息 420
23.4.4 通过模型生成器创建模型类Book 421
23.4.5 修改API定义类声明需要发布的方法 422
23.4.6 测试API定义类产生的WSDL文件是否正确 423
23.4.7 给API使用类添加业务逻辑完成API功能实现 423
23.4.8 通过Web Service客户端程序来验证服务器端API的实现 423
23.4.9 运行客户端验证Web Service API 426
附录 常用类函数应用参考 427
A.1 Numeric类 427
A.2 Float类 428
A.3 String类 430
A.4 Range类 444
A.5 Array类 445
A.6 Hash类 455
A.7 Regexp类 461
- 《钒产业技术及应用》高峰,彭清静,华骏主编 2019
- 《现代水泥技术发展与应用论文集》天津水泥工业设计研究院有限公司编 2019
- 《异质性条件下技术创新最优市场结构研究 以中国高技术产业为例》千慧雄 2019
- 《Prometheus技术秘笈》百里燊 2019
- 《中央财政支持提升专业服务产业发展能力项目水利工程专业课程建设成果 设施农业工程技术》赵英编 2018
- 《药剂学实验操作技术》刘芳,高森主编 2019
- 《林下养蜂技术》罗文华,黄勇,刘佳霖主编 2017
- 《脱硝运行技术1000问》朱国宇编 2019
- 《催化剂制备过程技术》韩勇责任编辑;(中国)张继光 2019
- 《信息系统安全技术管理策略 信息安全经济学视角》赵柳榕著 2020
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《人民院士》吴娜著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《中国人民的心》杨朔著;夕琳编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中华人民共和国成立70周年优秀文学作品精选 短篇小说卷 上 全2册》贺邵俊主编 2019
- 《指向核心素养 北京十一学校名师教学设计 数学 九年级 上 配人教版》周志英总主编 2019
- 《中华人民共和国成立70周年优秀文学作品精选 中篇小说卷 下 全3册》洪治纲主编 2019