Ruby编程语言
Ruby编程语言
David Flanagan, Yukihiro Matsumoto
出版时间:2009年01月
《Ruby编程语言》是Ruby语言的权威指南,它涵盖了Ruby 1.8和1.9版本方方面面的内容。本书的读者是那些有其他编程语言经验的Ruby初学者,以及希望提升Ruby编程水平的人员。本书虽详尽讲解了Ruby的方方面面,但是没有正式的语言规范格式。
本书的开始部分是Ruby的一个快速入门教程,接着从头开始解释语言的细节,包括:
* Ruby的句法和语法结构
* 数据结构和对象
* 表达式和操作符
* 语句和控制结构
* 方法、proc、lambda和闭包
* 类和模块
* 反射和元编程
* Ruby平台
本书还包含对Ruby平台上丰富的API的详尽介绍,并用带有详尽注释的代码演示了对Ruby进行文本处理、数字运算、集合、输入/输出、网络开发和并发编程的能力。
如果想真正理解Ruby,本书将是您的必读书。
David Flanagan是一位编程人员,也是畅销书《JavaScript: The Definitive Guide》(O'Reilly)和《Java in a Nutshell》(O'Reilly)的作者,这两本书被认为是Java和JavaScript语言的标准参考手册。
松本行弘(Yukihiro Matsumoto)是Ruby的缔造者、设计者及领袖级开发者。
“Flanagan既为Ruby语言提供了一个详尽的参考手册,也深入探索了Ruby的功能,并把这些内容有机结合在一起,使得每个人都愿意阅读它。”
——Evan Phoenix,Rubinius的缔造者
  1. 前言 I
  2. 第1章 导言 1
  3. 1.1 漫游Ruby 2
  4. 1.2 体验Ruby 11
  5. 1.3 关于本书 15
  6. 1.4 一个Ruby版的Sudoku解答 17
  7. 第2章 Ruby程序的结构和运行 25
  8. 2.1 词法结构 26
  9. 2.2 句法结构 33
  10. 2.3 文件结构 35
  11. 2.4 程序的编码 36
  12. 2.5 Ruby程序的运行 39
  13. 第3章 数据类型和对象 41
  14. 3.1 数字 42
  15. 3.2 文本 46
  16. 3.3 数组 64
  17. 3.4 哈希 67
  18. 3.5 范围 68
  19. 3.6 符号 71
  20. 3.7 True、False和Nil 72
  21. 3.8 对象 72
  22. 第4章 表达式和操作符 85
  23. 4.1 字面量和关键字字面量 86
  24. 4.2 变量引用 87
  25. 4.3 常量引用 88
  26. 4.4 方法调用 89
  27. 4.5 赋值 92
  28. 4.6 操作符 100
  29. 第5章 语句和控制结构 117
  30. 5.1 条件式 118
  31. 5.2 循环 127
  32. 5.3 迭代器和可枚举对象 130
  33. 5.4 代码块 140
  34. 5.5 改变控制流 146
  35. 5.6 异常和异常处理 154
  36. 5.7 BEGIN和END 165
  37. 5.8 线程、纤程和连续体 166
  38. 第6章 方法、Proc、Lambda和闭包 175
  39. 6.1 定义简单方法 177
  40. 6.2 方法名 180
  41. 6.3 方法和圆括号 183
  42. 6.4 方法参数 185
  43. 6.5 Proc和Lambda 192
  44. 6.6 闭包 200
  45. 6.7 Method对象 203
  46. 6.8 函数式编程 205
  47. 第7章 类和模块 213
  48. 7.1 定义一个简单类 214
  49. 7.2 方法可见性:Public、Protected、Private 232
  50. 7.3 子类化和继承 234
  51. 7.4 对象创建和初始化 241
  52. 7.5 模块 247
  53. 7.6 加载和请求模块 252
  54. 7.7 单键方法和Eigenclass 257
  55. 7.8 方法查找 258
  56. 7.9 常量查找 261
  57. 第8章 反射和元编程 265
  58. 8.1 类型、类和模块 266
  59. 8.2 对字符串和块进行求值 268
  60. 8.3 变量和常量 271
  61. 8.4 方法 272
  62. 8.5 钩子方法 277
  63. 8.6 跟踪 279
  64. 8.7 ObjectSpace和GC 281
  65. 8.8 定制控制结构 281
  66. 8.9 缺失的方法和常量 284
  67. 8.10 动态创建方法 287
  68. 8.11 别名链 290
  69. 8.12 领域特定语言 296
  70. 第9章 Ruby平台 303
  71. 9.1 字符串 304
  72. 9.2 正则表达式 310
  73. 9.3 数字和数学运算 321
  74. 9.4 日期和时间 325
  75. 9.5 集合 328
  76. 9.6 文件和目录 350
  77. 9.7 输入/输出 356
  78. 9.8 网络 366
  79. 9.9 线程和并发 372
  80. 第10章 Ruby环境 389
  81. 10.1 执行Ruby解释器 390
  82. 10.2 顶层环境 394
  83. 10.3 实用性信息抽取和产生报表的快捷方式 403
  84. 10.4 调用操作系统的功能 405
  85. 10.5 安全 409
  86. 索引 413
书名:Ruby编程语言
国内出版社:中国电力出版社
出版时间:2009年01月
书号:978-7-121-07701-2
原版书出版商:O'Reilly Media
David Flanagan
 
David Flanagan是一名程序员,也是一名作家,它的个人网站是http://davidflanagan.com。他在O’Reilly出版的其他畅销书还包括《JavaScript Pocket Reference》、《The Ruby Programming Language》以及《Java in a Nutshell》。David毕业于麻省理工学院,获得计算机科学与工程学位。他和妻子和孩子一起生活在西雅图和温哥华之间的美国太平洋西北海岸。
 
 
Yukihiro Matsumoto
 
Yukihiro Matsumoto("Matz"):Ruby的缔造者,一位专业程序员,为日本开源软件公司netlab.jp工作。Matz也是日本开源软件的布道者,发布了若干开源产品,cmail是其中之一,这是一个基于Emacs的邮件用户代理,完全用Emacs Lisp语言编写。Ruby是第一款他在日本之外被广泛熟知的软件。
Yukihiro Matsumoto (“Matz”), the creator of Ruby, is a professional programmer who worked for the Japanese open source company netlab.jp. Matz is also known as one of the open source evangelists in Japan. He’s released several open source products,including cmail, the Emacs-based mail user agent, written entirely in Emacs lisp. Ruby
is his first piece of software that has become known outside of Japan.
 
 
本书的封面动物是一种南美蜂鸟(Horned Sungem hummingbird),这些小鸟是南美洲的土著鸟类,主要生活在巴西和玻利维亚。它们喜欢像草地这样干旱开阔的栖息地,而不喜欢稠密或潮湿的森林。
蜂鸟是世界上翅膀震动最快的鸟类,这种南美蜂鸟更是可以每秒振翅90次。(可以跟振翅最慢的秃鹫对比,秃鹫每秒只能振翅一次。)因为蜂鸟如此轻快,它们可以依靠挥动翅膀而停在空中。为了方便吮吸花蜜,它们可以向后飞(所有鸟类中只有蜂鸟可以做到这点)。它们长而细的喙可以探伸到花的深处,因而,它们在葡萄牙语中的名字是“beija-flor”,意为亲吻鲜花的鸟类。而英文名字“hummingbird”则是来自于它们快速挥动翅膀时发出的嗡嗡声(译注1)。
雄性Horned Sungem在脑袋两侧有一簇簇红色、蓝色和金色的羽毛,背部呈虹彩色泽的绿色,喉部和胸部为黑色,腹部则为白色,尾巴长而尖。雌鸟与雄鸟看起来很相似,但没有那个像皇冠一样的头部羽毛。因为这种鸟颜色艳丽,早期的西班牙探险者称之为“Joyas voladoras”,意为“飞翔的宝石”。
关于蜂鸟有很多神话传说。在巴西,黑色蜂鸟用于表示家庭成员中有人死亡。古代阿兹泰克斯人非常崇拜蜂鸟,牧师会用蜂鸟毛覆盖受诅咒的人,用于驱除诅咒。同时,蜂鸟还是死者重生的标志,阿兹泰克斯人相信死去的战士会和这些鸟一块重生。阿兹泰克斯人的上帝Huitzilopochtli是太阳和战争的化身,他名字的意思是"南方飞来的蜂鸟",而南方是神灵的居住之所。