《Ruby Programming 向Ruby之父学程序设计 第2版》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:(日)高桥征义,后藤裕藏著;博硕文化译
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2009
  • ISBN:9787121077029
  • 页数:274 页
图书介绍:Ruby是为了让程序设计更快乐而开发的程序语言。Ruby具有“彻底面向对象”、“丰富的程序库”、“亲和力高的直观语法形式”等多项特征,但这些特征并不是Ruby的目的,只能说是为了让程序设计更有趣而开发的手段罢了。本书是为了让完全没有程序设计经验的读者也能灵活地使用Ruby,因此书中详细地说明了各种知识。从程序所需要的变量、常数、方法、类、控制结构等语法的说明,到类的主要使用方法、简单的应用等,尽可能都浅显地加以解说。您若是自己动手玩过HTML这样的读者,应该就能充分活用本书的知识了。另外,若您不是初学者,但想要从头开始学习Ruby语言,这本书也会派上用场。希望本书的读者,都能从使用Ruby的过程中,找到属于自己的“兴趣”与“乐趣”。──若您可以这样灵活运用,那将是本书作者无上的荣幸了。

第1部分 开始使用Ruby 2

第1章 与Ruby的第一次接触 2

1.1执行Ruby 2

Windows环境 3

UNIX环境 4

MacOS X环境 4

确认执行正常 5

1.2程序的说明 5

对象 5

方法 5

1.3字符串 6

换行字符与“\” 6

“"”与“""” 6

1.4调用方法 7

1.5 puts方法 7

1.6 p方法 8

1.7显示中文 8

1.8数值的显示与计算 9

显示数值 9

四则运算 10

数学函数 10

1.9变量 11

1.10写注释 12

1.11控制结构 13

1.12条件判断:if~then~end 14

1.13字符串反复执行(循环) 15

while语句 15

mes方法 15

1.14定义方法 16

1.15 读入其他文件 16

第2章 方便的对象 18

2.1数组 19

建立数组 19

从数组中取得对象 19

将对象存进数组里 20

数组的内容 20

数组的大小 21

逐项处理数组内容 21

2.2杂凑(HASH) 22

建立杂凑 22

从杂凑获取对象 22

逐项处理杂凑内容 23

2.3正则表达式 24

第3章 指令设计 27

3.1从命令行输入的数据 27

3.2读取文件 28

读入文件内的文本数据并显示 28

从文件逐行读入数据并显示出来 29

只显示文件里符合特定样式的几行 30

第2部分 学习基础 34

第4章 对象与变量、常数 34

4.1对象 34

4.2类 35

4.3变量 35

4.4常数 37

4.5保留字 37

第5章 条件判断 42

5.1什么是条件判断 42

5.2 Ruby的条件 43

条件与真假值 43

逻辑运算符 43

5.3 if语句 44

5.4 unless语句 46

5.5 case语句 47

5.6 if修饰符与unless修饰符 49

5.7总结 50

第6章 循环 51

6.1循环的基础 51

6.2写循环时要注意的事情 51

6.3实现循环的方式 52

6.4 times方法 52

6.5 for语句 53

6.6一般的for语句 55

6.7 while语句 55

6.8 until语句 57

6.9 each方法 58

6.10 loop方法 59

6.11循环的控制 59

break 60

next 61

redo 62

6.12总结 63

第7章 方法 64

7.1调用方法 64

7.2方法的分类 64

实例方法 64

类方法 65

函数性的方法 65

7.3定义方法 66

第8章 类与模块 68

8.1什么是类 68

类与实例 68

继承 69

8.2自己定义类 70

class语句 70

initialize方法 71

实例变量与实例方法 71

访问方法 72

类方法 73

常数 74

类变量 74

扩充类 74

使用继承 75

限制方法的调用 76

8.3什么是面向对象 78

数据与处理程序 78

“数据与处理程序”方式的问题 79

对象 80

面向对象的特征 81

Duck Typing(行为决定类型) 82

8.4什么是模块 83

8.5自己定义模块 84

常数 85

定义方法 85

第9章 错误处理与例外 86

9.1关于错误处理 86

9.2例外处理 87

9.3例外处理的写法 88

9.4善后处理 90

9.5重新执行 90

9.6 rescue修饰符 91

9.7例外处理语法的补充 91

9.8指定要捕捉的例外 92

9.9例外类 92

9.10引发例外 93

9.11 catch与throw 94

第3部分 使用类 96

第10章 数值(Numeric)类 96

10.1 Numeric的类架构 96

10.2数值常数 97

10.3算术运算 97

除法 98

Math模块 99

10.4数值类型的转换 99

10.5位运算 100

10.6数数 102

练习 103

第11章 数组(Array)类 104

11.1复习数组 104

11.2建立数组 105

使用Array.new 105

使用%w 105

使用to_a方法 106

使用字符串的split方法 106

11.3索引的用法 106

获取元素 106

改写元素 108

插入元素 109

以多个索引建立新数组 109

11.4不使用索引操作数组 109

11.5作为集合的数组 110

11.6作为“列表”的数组 111

11.7数组的主要方法 113

将数据加入数组中 113

从数组中删除数据 114

换掉数组的元素 115

11.8数组与迭代器 117

11.9处理数组的每个元素 117

使用循环配合索引 117

使用each方法逐项获取元素 118

使用破坏性的方法反复操作 118

使用其他迭代器 118

自己设计迭代器 118

11.10数组的元素 119

示例:使用简单的矩阵 119

小心初始化 119

11.11并行处理多个数组的值 120

练习 121

第12章 字符串(String)类 122

12.1建立字符串 122

使用%Q、%q 123

使用嵌入文档 123

使用sprintf方法 124

12.2获取字符串长度 125

12.3分割字符串 126

12.4连接字符串 127

12.5字符串的索引 128

12.6比较字符串 129

12.7处理换行字符 131

12.8字符串的查找与取代 131

查找字符串 132

字符串的取代 132

12.9字符串与数组共同的方法 133

与索引操作有关的方法 133

Enumerable模块相关的方法 133

连接、逆转相关的方法 134

12.10其他方法 134

练习 137

第13章 杂凑(Hash)类 139

13.1杂凑的复习 139

13.2建立杂凑的方法 140

使用{} 140

使用Hash.new 140

13.3获取、设定杂凑的值 140

直接取出所有键或值 141

杂凑的默认值 141

13.4查询杂凑里是否存在某个键或值 142

13.5查询杂凑的大小 143

13.6删除键与值 143

13.7初始化杂凑 144

13.8应用示例:计算单字数量 145

练习 147

第14章 正则表达式(Regexp)类 148

14.1关于正则表达式 148

正则表达式的写法与用途 148

建立正则表达式对象 149

14.2正则表达式的样式与匹配 149

以一般文字进行匹配 149

匹配行首与行尾 150

指定想要匹配成功的文字范围 151

匹配任意字符 152

使用反斜线的样式 153

反复出现 154

最短匹配 156

“()”与反复 156

多选 157

14.3使用quote方法的正则表达式 157

14.4正则表达式的选项 157

14.5回溯参照 159

14.6使用正则表达式的方法 159

sub方法与gsub方法 160

scan方法 160

14.7正则表达式的示例 161

练习 162

第15章 IO类 163

15.1输入/输出的种类 163

标准输入/输出 163

文件输入/输出 165

open-uri.rb 166

stringio.rb 166

15.2基本的输入/输出操作 167

输入操作 167

输出操作 169

15.3文件指针 170

15.4二进制模式与文本模式 171

15.5缓冲处理 171

15.6与指令交换数据 173

练习 174

第16章 File类与Dir类 175

16.1 File类 175

更改文件名 175

复制文件 176

删除文件 176

16.2目录的操作 176

读取目录内容 177

Dir.glob 179

建立目录与删除 180

16.3文件与目录的属性 180

获取属性 180

FileTest模块 182

16.4文件名的操作 183

16.5与文件操作相关的程序库 184

find.rb 184

tempfile.rb 185

fileutils.rb 185

练习 187

第17章 Time类与Date类 188

17.1 Time类、Date类、DateTime类 188

17.2获取Time对象 189

17.3计算时间 189

17.4时间的格式 189

17.5本地时间 190

17.6解析字符串 191

17.7使用DateTime类 191

17.8 DateTime类与Time类的差异 192

DateTime类表示一天的方式 192

时差处理的差异 193

17.9使用Date类求日期 194

17.10计算日期 194

17.11日期格式 195

17.12解析字符串 195

练习 195

第4部分 灵活使用Ruby 198

第18章 Ruby的其他补充知识 198

18.1命令行选项 198

调试、运行确认 198

获取信息 200

单行程序(one-liner) 200

安全性检查 201

其他 202

18.2环境变量 203

18.3常数 204

18.4内建变量 204

18.5内建常数 207

18.6多重赋值 208

18.7 BEGIN{}与END{} 209

18.8 alias 209

18.9 undef 210

18.10虚拟变量 210

第19章 运算符 211

19.1逻辑运算符的应用 211

19.2条件运算符 212

19.3自我赋值 213

19.4范围运算符 214

19.5运算符的优先次序 214

19.6定义运算符 215

二元运算符 215

单项运算符 216

数组参照运算符 216

第20章 迭代器(iterator) 219

20.1迭代器与区块调用 219

20.2迭代器的基础知识 219

20.3各式各样的迭代器 221

用在数组上 221

用在杂凑上 221

用在文件上 222

20.4 Enumerable模块 223

each方法 223

collect方法 223

sort方法 223

sort_by方法 224

20.5实现迭代器 225

第21章 Mix-in 231

21.1 include方法 231

21.2 Comparable模块 231

21.3 Enumerable模块 233

21.4与继承的关系 236

21.5方法的查找规则 236

第5部分 制作应用 240

第22章 日志文件解析 240

22.1浅谈日志文件访问 240

22.2查询访问数 241

22.3查询访问日期 242

22.4以图表显示访问日期 245

22.5只统计特定文件的访问次数 246

第23章 查找邮政编码 247

23.1邮政编码数据库 247

23.2读文件 248

23.3 gdbm程序库 248

23.4生成数据 249

23.5查找数据 250

23.6 jzipcode.rb 251

23.7执行与使用 251

23.8总结 252

第24章 解析HTML 253

24.1关于HTML 253

元素与标签 253

注释 254

字符引用 254

24.2建立程序 255

注释的解析 255

标签的解析(一) 256

文字数据的解析 256

示例 256

标签的解析(二) 258

24.3超链接一览 261

附录A 264