Ruby基础教程

0
(0)

Ruby基础教程

作者:高桥征义/后藤裕藏

出版社:人民邮电出版社

译者:何文斯

出版年:2014-9-1

页数:334

定价:CNY79.00

装帧:平装

丛书:图灵程序设计丛书·Web开发系列

ISBN:9787115366467

内容简介
······

本书为日本公认的最好的Ruby入门教程。松本行弘亲自审校并作序推荐。本书支持最新的Ruby 2.0,也附带讲解了可运行于1.9版本的代码,事无巨细且通俗易懂地讲解了编写程序时所需要的变量、常量、方法、类、流程控制等的语法,以及主要类的使用方法和简单的应用,让没有编程经验的读者也能轻松掌握Ruby,找到属于自己的快乐编程方式,做到融会贯通并灵活运用到实际工作中。

本书适合Ruby初学者学习参考,有一定Ruby编程基础的读者若想再回顾一下Ruby的各知识点,本书也能提供不少帮助。

作者简介
······

作者简介:

高桥征义(Masayoshi Takahashi)

日本Ruby协会创始人兼会长。日本著名的IT书籍电子书平台达人出版会董事长。著有《Ruby基础教程》《Rails3绝技190招》等。喜欢的作家是新井素子。

后藤裕藏(Yuuzou Gotou)

日本网络应用通信研究所董事。喜欢平克・弗洛伊德乐队。

松本行弘(Yukihiro Matsumoto)

Ruby语言发明者,亦是亚洲首屈一指的编程语言发明者。现兼任网络应用通信研究所(NaCl)研究员、乐天技术研究所研究员、Heroku首席架构师等。昵称“Matz”。讨厌东京,喜欢温泉。

译者简介:

何文斯

上海交通大学电子工程系研究生毕业,现就职于某国际独立软件开发商,从事软件售后支持工作。对面向对象的程序设计,脚本语言及其在语音、图像等信号处理中的应用有着浓厚的兴趣。

目录
······

第1部分 Ruby初体验

第1章 Ruby初探  2

1.1 Ruby的运行方法  3

1.1.1 ruby命令的执行方法  3

1.1.2 irb命令的执行方法  4

1.2 程序解说  5

1.2.1 对象  5

1.2.2 方法  5

1.3 字符串  6

1.3.1 换行符与  6

1.3.2 ' '与" "  7

1.4 方法的调用  7

1.5 puts方法  8

1.6 p方法  8

1.7 中文的输出  9

1.8 数值表示与计算  11

1.8.1 数值  11

1.8.2 四则运算  11

1.8.3 数学相关的函数  12

1.9 变量  13

print方法和变量  14

1.10 注释  14

1.11 控制语句  15

print方法和变量  16

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

1.13 循环  18

1.13.1 while语句  18

1.13.2 times方法  18

第2章 便利的对象  19

2.1 数组  20

2.1.1 数组的创建  20

2.1.2 数组对象  20

2.1.3 从数组中抽取对象  20

2.1.4 将对象保存到数组中  21

2.1.5 数组的元素  22

2.1.6 数组的大小  22

2.1.7 数组的循环  23

2.2 散列  24

2.2.1 什么是符号  24

2.2.2 散列的创建  25

2.2.3 散列的使用  25

2.2.4 散列的循环  25

2.3 正则表达式  26

模式与匹配  26

第3章 创建命令  29

3.1 命令行的输入数据  29

3.2 文件的读取  30

3.2.1 从文件中读取内容并输出  31

3.2.2 从文件中逐行读取内容并输出  32

3.2.3 从文件中读取指定模式的内容并输出  33

3.3 方法的定义  34

3.4 其他文件的引用  34

第2部分 Ruby的基础

第4章 对象、变量和常量  38

4.1 对象  38

4.2 类  39

4.3 变量  39

局部变量与全局变量  40

4.4 常量  42

4.5 保留字  42

4.6 多重赋值  43

4.6.1 合并执行多个赋值操作  43

4.6.2 置换变量的值  43

4.6.3 获取数组的元素  44

4.6.4 获取嵌套数组的元素  44

第5章 条件判断  46

5.1 什么是条件判断  46

5.2 Ruby中的条件  47

条件与真假值  47

5.3 逻辑运算符  48

5.4 if语句  49

5.5 unless语句  50

5.6 case语句  51

5.7 if修饰符与unless修饰符  54

5.8 总结  54

第6章 循环  57

6.1 循环的基础  57

6.2 循环时的注意事项  58

6.3 实现循环的方法  58

6.4 times方法  58

6.5 for语句  60

6.6 普通的for语句  62

6.7 while语句  62

6.8 until语句  64

6.9 each方法  65

6.10 loop方法  66

6.11 循环控制  66

6.11.1 break  68

6.11.2 next  69

6.11.3 redo  70

6.12 总结  71

第7章 方法  73

7.1 方法的调用  73

7.1.1 简单的方法调用  73

7.1.2 带块的方法调用  74

7.1.3 运算符形式的方法调用  74

7.2 方法的分类  75

7.2.1 实例方法  75

7.2.2 类方法  76

7.2.3 函数式方法  76

7.3 方法的定义  77

7.3.1 方法的返回值  78

7.3.2 定义带块的方法  79

7.3.3 参数个数不确定的方法  80

7.3.4 关键字参数  81

7.3.5 关于方法调用的一些补充  82

第8章 类和模块  87

8.1 类是什么  87

8.1.1 类和实例  87

8.1.2 继承  89

8.2 类的创建  90

8.2.1 class关键字  91

8.2.2 initialize方法  91

8.2.3 实例变量与实例方法  92

8.2.4 存取器  93

8.2.5 特殊变量self  94

8.2.6 类方法  95

8.2.7 常量  96

8.2.8 类变量  96

8.2.9 限制方法的调用  97

8.3 扩展类  99

8.3.1 在原有类的基础上添加方法  99

8.3.2 继承  99

8.4 alias与undef  101

8.4.1 alias  101

8.4.2 undef  102

8.5 模块是什么  103

8.6 模块的使用方法  103

8.6.1 提供命名空间  103

8.6.2 利用Mix-in扩展功能  104

8.7 创建模块  104

8.7.1 常量  105

8.7.2 方法的定义  105

8.8 Mix-in  106

8.8.1 查找方法的规则  107

8.8.2 extend方法  109

8.8.3 类与Mix-in  110

8.9 面向对象程序设计  111

8.9.1 对象是什么  111

8.9.2 面向对象的特征  112

8.9.3 鸭子类型  113

8.9.4 面向对象的例子  114

第9章 运算符  117

9.1 赋值运算符  117

9.2 逻辑运算符的应用  118

9.3 条件运算符  120

9.4 范围运算符  120

9.5 运算符的优先级  121

9.6 定义运算符  122

9.6.1 二元运算符  122

9.6.2 一元运算符  124

9.6.3 下标方法  125

第10章 错误处理与异常  126

10.1 关于错误处理  126

10.2 异常处理  127

10.3 异常处理的写法  128

10.4 后处理  131

10.5 重试  131

10.6 rescue修饰符  132

10.7 异常处理语法的补充  132

10.8 指定需要捕捉的异常  133

10.9 异常类  134

10.10 主动抛出异常  135

第11章 块  136

11.1 块是什么  136

11.2 块的使用方法  137

11.2.1 循环  137

11.2.2 隐藏常规处理  138

11.2.3 替换部分算法  139

11.3 定义带块的方法  142

11.3.1 执行块  142

11.3.2 传递块参数,获取块的值  142

11.3.3 控制块的执行  144

11.3.4 将块封装为对象  145

11.4 局部变量与块变量  147

第3部分 Ruby的类

第12章 数值类  150

12.1 数值类的构成  150

12.2 数值的字面量  152

12.3 算数运算  153

除法  153

12.4 Math模块  155

12.5 数值类型转换  156

12.6 位运算  157

12.7 随机数  159

12.8 计数  160

12.9 近似值误差  161

第13章 数组类  164

13.1 复习数组  165

13.2 数组的创建方法  165

13.2.1 使用Array.new  165

13.2.2 使用%w与%i  166

13.2.3 使用to_a方法  166

13.2.4 使用字符串的split方法  166

13.3 索引的使用方法  167

13.3.1 获取元素  167

13.3.2 元素赋值  169

13.3.3 插入元素  170

13.3.4 通过多个索引创建数组  171

13.4 作为集合的数组  171

“|”与“+”的不同点  173

13.5 作为列的数组  173

13.6 主要的数组方法  175

13.6.1 为数组添加元素  175

13.6.2 从数组中删除元素  177

13.6.3 替换数组元素  179

13.7 数组与迭代器  180

13.8 处理数组中的元素  181

13.8.1 使用循环与索引  181

13.8.2 使用each方法逐个获取元素  181

13.8.3 使用具有破坏性的方法实现循环  182

13.8.4 使用其他迭代器  182

13.8.5 创建专用的迭代器  182

13.9 数组的元素  183

13.9.1 使用简单的矩阵  183

13.9.2 初始化时的注意事项  183

13.10 同时访问多个数组  185

第14章 字符串类  188

14.1 字符串的创建  189

14.1.1 使用%Q与%q  190

14.1.2 使用Here Document  190

14.1.3 使用sprintf方法  191

14.1.4 使用“  191

14.2 获取字符串的长度  193

14.3 字符串的索引  194

14.4 字符串的连接  194

14.5 字符串的比较  195

字符串的大小比较  196

14.6 字符串的分割  198

14.7 换行符的使用方法  198

14.8 字符串的检索与置换  199

14.8.1 字符串的检索  199

14.8.2 字符串的置换  200

14.9 字符串与数组的共同方法  200

14.9.1 与索引操作相关的方法  200

14.9.2 返回Enumerator对象的方法  201

14.9.3 与连接、反转(reverse)相关的方法  202

14.10 其他方法  203

14.11 日语字符编码的转换  204

14.11.1 encode方法  204

14.11.2 nkf库  204

第15章 散列类  208

15.1 复习散列  208

15.2 散列的创建  209

15.2.1 使用{}  209

15.2.2 使用Hash.new  209

15.3 值的获取与设定  210

15.3.1 一次性获取所有的键、值  211

15.3.2 散列的默认值  211

15.4 查看指定对象是否为散列的键或值    212

15.5 查看散列的大小  213

15.6 删除键值  213

15.7 初始化散列  214

处理有两个键的散列  215

15.8 应用示例:计算单词数量  216

第16章 正则表达式类  219

16.1 关于正则表达式  219

16.1.1 正则表达式的写法与用法  219

16.1.2 正则表达式对象的创建方法  220

16.2 正则表达式的模式与匹配  220

16.2.1 匹配普通字符  221

16.2.2 匹配行首与行尾  221

16.2.3 指定匹配字符的范围  222

16.2.4 匹配任意字符  224

16.2.5 使用反斜杠的模式  225

16.2.6 重复  226

16.2.7 最短匹配  228

16.2.8 ()与重复  229

16.2.9 选择  229

16.3 使用quote方法的正则表达式  229

16.4 正则表达式的选项  230

16.5 捕获  231

16.6 使用正则表达式的方法  232

16.6.1 sub方法与gsub方法  232

16.6.2 scan方法  233

16.7 正则表达式的例子  234

第17章 IO类  237

17.1 输入/输出的种类  237

17.1.1 标准输入/输出  237

17.1.2 文件输入/输出  239

17.2 基本的输入/输出操作  240

17.2.1 输入操作  240

17.2.2 输出操作  243

17.3 文件指针  244

17.4 二进制模式与文本模式  245

17.5 缓冲  246

17.6 与命令进行交互  248

17.7 open-uri库  249

17.8 stringio库  250

第18章 File类与Dir类  252

18.1 File类  252

18.1.1 变更文件名  253

18.1.2 复制文件  253

18.1.3 删除文件  254

18.2 目录的操作  254

18.2.1 目录内容的读取  255

18.2.2 目录的创建与删除  258

18.3 文件与目录的属性  259

FileTest模块  261

18.4 文件名的操作  262

18.5 与操作文件相关的库  263

18.5.1 find库  263

18.5.2 tempfile库  264

18.5.3 fileutils库  265

第19章 Encoding类  268

19.1 Ruby的编码与字符串  268

19.2 脚本编码与魔法注释  269

19.3 Encoding类  270

Encoding类的方法  271

19.4 正则表达式与编码  274

19.5 IO类与编码  274

19.5.1 外部编码与内部编码  274

19.5.2 编码的设定  275

19.5.3 编码的作用  276

第20章 Time类与Date类  280

20.1 Time类与Date类  280

20.2 时间的获取  281

20.3 时间的计算  282

20.4 时间的格式  282

20.5 本地时间  284

20.6 从字符串中获取时间  284

20.7 日期的获取  285

20.8 日期的运算  286

20.9 日期的格式  286

20.10 从字符串中获取日期  287

第21章 Proc类  288

21.1 Proc类是什么  288

21.1.1 lambda  289

21.1.2 通过Proc参数接收块  291

21.1.3 to_proc方法  292

21.2 Proc的特征  292

21.3 Proc类的实例方法  293

第4部分 动手制作工具

第22章 文本处理  298

22.1 准备文本  298

22.1.1 下载文件  298

22.1.2 获取正文  299

22.1.3 删除标签  300

22.2 扩展simple_grep.rb:显示次数  302

计算匹配行  302

22.3 扩展simple_grep.rb:显示匹配的部分  304

22.3.1 突出匹配到的位置  304

22.3.2 显示前后各10个字符  305

22.3.3 让前后的字符数可变更  306

第23章 检索邮政编码  308

23.1 获取邮政编码  308

23.2 检索邮政编码  309

23.3 sqlite3库  309

23.4 插入数据  311

23.5 检索数据  313

23.6 总结  314

附录

附录A Ruby运行环境的构建  316

A.1 Ruby的安装  316

A.2 在Windows下安装  316

A.2.1 开始安装  317

A.2.2 同意软件使用许可协议  317

A.2.3 确认安装路径以及选项  317

A.2.4 安装进度  318

A.2.5 安装完成  318

A.2.6 启动控制台  319

A.3 在Mac OS X下安装  320

通过MacPorts安装  321

A.4 在Unix下安装  322

A.4.1 从源代码编译  322

A.4.2 使用二进制软件包  323

A.4.3 使用Ruby软件包管理工具  323

A.5 编辑器与IDE  323

没有好用的编辑器就不能编写Ruby程序吗  324

附录B Ruby参考集  325

B.1 RubyGems  325

gem命令  325

B.2 Ruby参考手册  327

B.2.1 Web上的资源  327

B.2.2 ri命令  328

B.2.3 阅读参考手册的技巧  328

B.3 命令行选项  329

B.4 预定义变量、常量  330

B.4.1 预定义变量  330

B.4.2 预定义常量  331

B.4.3 伪变量  332

B.4.4 环境变量  332

B.5 错误信息  332

B.5.1 syntax error  333

B.5.2 NameError/NoMethodError  333

B.5.3 ArgumentError  333

B.5.4 TypeError  334

B.5.5 LoadError  334

B.5.6 [BUG]  334

后记   335

谢辞   336

"Ruby基础教程"试读
······

Ruby 常常被称为“国产语言”。作为 Ruby 的设计者,我的确是个如假包换的日本人, Ruby 最具代表性的实现——CRubyA 中的许多核心成员也都是日本人。但是,对 Ruby 的 开发和发展做出过大大小小贡献的人里有很多都不是日本人。在 JVM 上使用的 JRuby、用 C++ 实现的 Rubinius 等,其主要开发者是美国人;MacRuby、RubyMotion 的主要开发者是 比利时人。还有使 Ruby 发扬光大的 Ruby 社区…

  • 推 荐 序
  • 译 者 序
  • 前 言 ——乐在其中的编程语言
  • 第4章 对象、变量和常量

评论 ······

很一般

不错的入门书。但是内容没有涉及元编程

不如ruby元编程好,但可以作为工具书…

ruby入门书,鬼子写的书就是通俗易懂。。。

点击星号评分!

平均分 0 / 5. 投票数: 0

还没有投票!请为他投一票。

评论 抢沙发

评论前必须登录!

 

登录

找回密码

注册