Ruby 的 OOP 与动态特性

阅读数:471 2007 年 11 月 9 日

话题:RubyRuby on Rails设计模式语言 & 开发架构

本图书摘选来自 Amazon 网站销量最好的三本 Ruby 书之一《The Ruby Way》第二版的中文版《Ruby 之道》,已由人民邮电出版社出版第 11 章,介绍了一些不常见或较高级的 OOP 技术以及一些常见的用法。同时介绍了一些设计模式的实现(以及一些不需要实现的模式),还讨论 Ruby 的反射 API、Ruby 的动态性导致的一些有趣的结果以及使用动态语言能够实现的各种技巧。

Ruby 是一种面向对象的敏捷语言,借鉴了 LISP、Smalltalk、Perl、CLU 和其他语言的最佳特性。在本书第一版面世后的 5 年内,Ruby 得以日益流行。《Ruby 之道》采用“如何解决问题”的方式阐述 Ruby 编程,书中包含 400 多个按主题分类的示例。每个示例都回答了“如何使用 Ruby 来完成”的问题。首先对要完成的任务进行了描述,并讨论了技术方面的约束条件;然后逐步地阐述了一种优秀的解决方案。在过程中,作者辅以说明和解释来帮助读者理解。

本文作者 Hal Fulton 有着非常丰富的软件从业经历,早年他主要从事 Unix 系统相关的开发工作,在 1999 年首次接触 Ruby,然后就一发不可收拾地爱上了这门语言。他先后参见了 6 次 Ruby 大会,并在其中的 4 次中发表过演讲,现在他仍然活跃在 Ruby 的邮件列表和 IRC 频道中,而且正在开发几个 Ruby 项目。也许正因为他对这门语言的热爱,才使得他写出了包括 Ruby 语言创始人松本行弘都为之赞叹的《The Ruby Way》,并亲自为这本书的第一版和第二版作序。在序中,松本行弘说:

“道”是很难形容的。我能够感受到它,但未曾尝试过用语言来解释它。这太难了,即使是用我的母语日语。但 Hal Fulton 这样做了,且第一次(本书的第一版)就做得很不错。由于得到了 Ruby 社区许多人的帮助,他的第二次尝试(即《Ruby 之道》第二版)更出色。

征得人民邮电出版社的同意,我们将松本行弘的两个序言悉数加入到本摘选中,一起分享这位 Ruby 大师的珠玑之言。

本书涵盖如下主题:

  • Ruby 概述,阐述了术语和基本原理;
  • 低级数据类型(数字、字符串、正则表达式等)的运算;
  • 新的正则表达式引擎(Oniguruma);
  • 国际化(I18N)和 Ruby 消息目录;
  • 散列、数组及其他数据结构(如栈、树和图)的运算;
  • 使用 I/O、文件和持久化对象;
  • MySQL、SQLite、Oracle、DBI 等数据库;
  • Ruby 特有的 OOP 技术及动态编程;
  • Ruby 图形界面(Tk、GTK+、Fox 和 Qt);
  • 使用 Ruby 线程实现轻量级多任务;
  • 将 Ruby 用于编写脚本和系统管理;
  • 使用图像文件、PDF、YAML、XML、RSS 和 Atom;
  • Ruby 代码的测试、调试、剖析和打包;
  • 低级网络编程和客户 / 服务器交互;
  • Web 开发工具,包括 Rails、Nitro、Wee、IOWA 等;
  • 使用分布式 Ruby、Rinda 和 Ring;
  • Ruby 开发工具,如 IDE、文档化工具等。

请点击下载《The Ruby Way》(第二版)中文版第 11 章:Ruby 的 OOP 与动态特性(PDF 格式,57 页)