第一部分 使用RubyGems 2
第1章 什么是RubyGems 2
1.1为什么使用RubyGems 2
1.1.1标准化的软件包格式 2
1.1.2访问Ruby软件包存储仓库 3
1.1.3使用Gem服务器重新分发Gem包 3
1.1.4处理软件包依赖关系 3
1.1.5处理版本的依赖关系 3
1.1.6透明地替换Ruby库 4
1.1.7处理操作系统的差异 4
1.2与其他包管理器的比较 4
第2章 安装RubyGems 6
2.1安装Ruby 6
2.1.1你已经安装了Ruby 6
2.1.2在Linux上安装Ruby 6
2.1.3在Windows上安装Ruby 7
2.1.4测试你的Ruby安装 8
2.2在Linux/Mac OS X上安装RubyGems 8
2.3升级RubyGems系统 9
第3章 使用RubyGems 10
3.1使用Gem包 10
3.1.1使用Creditcard Gem包 11
3.1.2使用Cmdparse包解析命令行参数 13
3.2使用源码Gem包 16
3.3调试RubyGems 19
第4章 Gem包的版本管理 21
4.1什么是Gem包的版本 21
4.2安装旧版本的Gem包 22
4.3更新Gem包 23
4.4删除Gem包 24
4.5指定Gem包版本 24
第二部分 使用特殊的Ruby Gem包 28
第5章 使用ActiveRecord访问数据 28
5.1 ActiveRecord如何工作 28
5.1.1 ActiveRecord模型类 29
5.1.2数据处理 31
5.2使用ActiveRecord归档RSS新闻 32
5.3结论 36
第6章 使用BlueCloth标记文本 37
6.1 BlueCloth如何工作 37
6.2将BlueCloth文本转换成HTML 38
6.3将BlueCloth文本转换成PDF 39
6.4结论 43
第7章 使用Camping创建Web应用程序 44
7.1 Camping如何工作 44
7.1.1模型模块Camping::Models 45
7.1.2控制器模块Camping::Controllers 46
7.1.3视图模块Camping::Views 46
7.2使用Camping记录时间 47
7.3结论 59
第8章 使用Cmdparse创建命令行应用程序 60
8.1 Cmdparse如何工作 60
8.2创建Job-Search工具 62
8.3结论 70
第9章 使用Erubis作为HTML模板 71
9.1 Erubis如何工作 71
9.2使用Erubis实现数据查看器 73
9.3结论 78
第10章 使用Feedtools解析Feed 79
10.1 Feedtools如何工作 79
10.2使用Feedtools构建新闻搜索工具 80
10.3结论 82
第11章 使用FxRuby创建图形用户接口程序 83
11.1 FxRuby如何工作 83
11.2使用FxRuby实现动态数据表单 84
11.3结论 89
第12章 使用YahooFinance获取股票信息 90
12.1 YahooFinance如何工作 90
12.2使用YahooFinance显示股票的变化 91
12.3结论 94
第13章 使用Hpricot解析HTML 95
13.1 Hpricot如何工作 95
13.2使用Hpricot抓取信息 97
13.3结论 99
第14章 使用Markaby生成HTML 100
14.1 Markaby如何工作 100
14.2使用Markaby实现股票走势图 101
14.3结论 104
第15章 使用Fastercsv解析CSV数据 105
15.1 Fastercsv如何工作 105
15.2使用Fastercsv处理人口普查数据 106
15.3结论 108
第16章 使用Multi完成多重分派 109
16.1 Multi如何工作 109
16.2使用Multi格式化SQL语句 110
16.3结论 117
第17章 使用Mongrel作为Web服务器 118
17.1 Mongrel如何工作 118
17.2使用Mongrel作为Rails的开发服务器 119
17.3在Windows中将Mongrel作为服务运行 120
17.4使用Mongrel运行Camping应用程序 120
17.5使用Mongrel作为轻量级服务器 121
17.6使用Apache2.2和Mongrel运行Rails应用 122
17.7结论 123
第18章 使用Net-SFTP安全传输文件 124
18.1 Net-SFTP如何工作 124
18.2使用Net-SFTP上传文件 125
18.3结论 126
第19章 使用Net-SSH在服务器端执行命令 127
19.1 Net-SSH如何工作 127
19.2使用Net-SSH和Vim编辑远程文件 128
19.3结论 131
第20章 使用Creditcard验证信用卡 132
20.1 Creditcard如何工作 132
20.2使用Creditcard批量验证信用卡卡号 132
20.3结论 134
第21章 使用PDF-Writer生成PDF文档 135
21.1 PDF-Writer如何工作 135
21.2使用PDF-Writer和Net/SFTP生成报表 136
21.3结论 141
第22章 使用Runt处理周期性事件 142
22.1 Runt如何工作 142
22.2使用Runt计划用户组会议 144
22.3定期执行计划命令 146
22.4结论 148
第23章 使用Rails构建Web站点 149
23.1 Rails如何工作 149
23.2使用Rails开发一个简单的数据库应用程序 150
23.3结论 155
第24章 使用Rake自动执行任务 157
24.1 Rake如何工作 157
24.2使用BlueCloth和Rake生成文档 158
24.3结论 162
第25章 使用RMagick处理图片 163
25.1 RMagick如何工作 163
25.2使用RMagick创建缩略图 164
25.3结论 169
第26章 使用Memcache-Client加速Web应用 170
26.1 Memcache-Client如何工作 170
26.2使用Memcached加速Ruby on Rails的会话缓存 171
26.3使用图形界面客户端访问Memcached服务器 175
26.4结论 177
第27章 使用Rubyzip管理Zip压缩包 178
27.1 Rubyzip如何工作 178
27.2从Zip压缩包中读取文本文件内容 179
27.3结论 181
第28章 使用Memoize加速函数调用 182
28.1 Memorize如何工作 182
28.2生成MP3列表 183
28.3结论 186
第29章 使用Id31ib-Ruby标记MP3文件 187
29.1 Id3lib-Ruby如何工作 187
29.2使用聚集标签器修改ID3标签 188
29.3结论 190
第30章 使用Shorturl简化URL链接 191
30.1 Shorturl如何工作 191
30.2使用Shorturl缩短RSS Feeds 192
30.3结论 194
第31章 使用Rubyscript2exe创建标准的Ruby可执行程序 195
31.1 Rubyscript2exe如何工作 195
31.2使用Rubyscript2exe打包id3tool 196
31.2.1示例剖析 197
31.2.2特殊的Rubyscript2exe参数 198
31.3结论 199
第32章 使用Tidy清理混乱的HTML页面 200
32.1 Tidy如何工作 200
32.2使用Tidy格式化HTML 202
32.3结论 205
第33章 使用XML-simple解析XML 206
33.1 XML-simple如何工作 206
33.1.1使用xml_ in解析XML文件 206
33.1.2使用xml out生成XML字符串 207
33.2使用XML-simple跟踪OpenSSL的缺陷 208
33.3结论 212
第三部分 创建Ruby Gem包 214
第34章 创建自己的Gem包 214
34.1 Gem包的内部结构 214
34.2什么是Gemspec 214
34.3根据Gemspec创建Gem包 214
34.4结论 218
第35章 Gem包的分发 219
35.1分发Gem包的方法 219
35.1.1使用RubyForge分发Gem包 220
35.1.2使用gem_server分发Gem包 221
35.1.3使用Web服务器分发Gem包 222
35.2结论 223