参考手册:卷首语
php?name=Ruby" onclick="tagshow(event)" class="t_tag">Ruby是一种简便快捷的面向对象编程的脚本语言.php?name=Ruby" onclick="tagshow(event)" class="t_tag">Ruby可以(像Perl一样)进行文本处理及系统管理,其功能十分丰富.同时,php?name=Ruby" onclick="tagshow(event)" class="t_tag">Ruby简单易懂,便于扩充.
若您正在寻找一种简单的面向对象语言,或者觉得Perl不够简便,又或者虽然喜欢Lisp的思想却讨厌到处都是括号的话,Ruby正是您不二的选择.
Ruby有下列优点.
解释器
Ruby是解释型语言,因此执行程序时无需编译.
变量无类型(动态地确定类型)
Ruby的变量可以接收各种类型的数据,因此没有必要担心变量类型的问题.另一方面,这弱化了编译检查的功能.
无需声明变量
Ruby中无需声明变量即可使用.可以根据变量名分辨变量的种类(局部变量,全局变量,实例变量等).
语法简单
受Eiffel影响,Ruby的语法十分简单.
内存管理无需用户干预
Ruby自动进行内存管理.解释器内置的垃圾回收器会自动回收不再使用的对象.
一切都是对象
从一开始Ruby就被设计成为纯粹的面向对象语言.包括整数这种基本的数据类型在内所有数据都被看是对象,进而得到统一的处理.
类,继承,方法
Ruby当然具有面向对象语言的基本功能,包括类,继承和方法等.
特殊方法
可向某对象添加方法.例如,可以把GUI按钮被按下时的动作作为方法记述下来,还可以用它来进行原型库(prototypebase)的面向对象编程(只要您想这样的话).
使用模块进行糅合(Mix-in)
Ruby认为多重继承会导致问题复杂化,因此故意舍弃了多重继承,但可以使用模块超越类的界限来共享数据和方法等.这就是"Mix-in"糅合功能
迭代器
迭代器功能可以将流程控制结构抽象化.
闭包
可以将某过程片段对象化,对象化后的该过程片段就称作闭包.
功能强大的字符串操作/正则表达式
以Perl为样板创造出了功能强大的字符串操作和正则表达式检索功能.
超长整数
内置了处理超长整数的功能,所以只要内存允许就可以计算非常大的整数.例如计算400的阶乘等也轻而易举.
异常处理功能
异常处理功能可以使您编写代码处理异常情况.
可以直接访问OS
Ruby可以使用(UNIX的)绝大部分的系统调用.即使单独使用Ruby也可以进行系统编程.
动态加载
若OS支持的话,可以在运行时读入对象文件.