第1章 导言 1
1.1 漫游Ruby 2
1.2 体验Ruby 11
1.3 关于本书 15
1.4 一个Ruby版的Sudoku解答 17
第2章 Ruby程序的结构和运行 25
2.1 词法结构 26
2.2 句法结构 33
2.3 文件结构 35
2.4 程序的编码 36
2.5 Ruby程序的运行 39
第3章 数据类型和对象 41
3.1 数字 42
3.2 文本 46
3.3 数组 64
3.4 哈希 67
3.5 范围 68
3.6 符号 71
3.7 True、False和Nil 72
3.8 对象 72
第4章 表达式和操作符 85
4.1 字面量和关键字字面量 86
4.2 变量引用 87
4.3 常量引用 88
4.4 方法调用 89
4.5 赋值 92
4.6 操作符 100
第5章 语句和控制结构 117
5.1 条件式 118
5.2 循环 127
5.3 迭代器和可枚举对象 130
5.4 代码块 140
5.5 改变控制流 146
5.6 异常和异常处理 154
5.7 BEGIN和END 165
5.8 线程、纤程和连续体 166
第6章 方法、Proc、Lambda和闭包 175
6.1 定义简单方法 177
6.2 方法名 180
6.3 方法和圆括号 183
6.4 方法参数 185
6.5 Proc和Lambda 192
6.6 闭包 200
6.7 Method对象 203
6.8 函数式编程 205
第7章 类和模块 213
7.1 定义一个简单类 214
7.2 方法可见性:Public、Protected、Private 232
7.3 子类化和继承 234
7.4 对象创建和初始化 241
7.5 模块 247
7.6 加载和请求模块 252
7.7 单键方法和Eigenclass 257
7.8 方法查找 258
7.9 常量查找 261
第8章 反射和元编程 265
8.1 类型、类和模块 266
8.2 对字符串和块进行求值 268
8.3 变量和常量 271
8.4 方法 272
8.5 钩子方法 277
8.6 跟踪 279
8.7 ObjectSpace和GC 281
8.8 定制控制结构 281
8.9 缺失的方法和常量 284
8.10 动态创建方法 287
8.11 别名链 290
8.12 领域特定语言 296
第9章 Ruby平台 303
9.1 字符串 304
9.2 正则表达式 310
9.3 数字和数学运算 321
9.4 日期和时间 325
9.5 集合 328
9.6 文件和目录 350
9.7 输入/输出 356
9.8 网络 366
9.9 线程和并发 372
第10章 Ruby环境 389
10.1 执行Ruby解释器 390
10.2 顶层环境 394
10.3 实用性信息抽取和产生报表的快捷方式 403
10.4 调用操作系统的功能 405
10.5 安全 409
索引 413