Ruby的发明者是松本行弘 Yukihiro “matz” Matsumoto。
Ruby是面向对象的编程语言,是解释型语言。
Ruby优点:
解释器 Ruby是解释型语言,其程序无需编译即可轻松执行。
变量无类型 Ruby的变量没有类型,因此不必为静态的类型匹配而烦恼。相应地,错误检查功能也变弱了。
不需要变量声明 所有变量均无需声明即可立即使用。另外,从变量名即可判断出是何种变量(局部变量,全局变量,实例变量)。
语法简单 语法比较简单,类似Algol系语法。
不需要内存管理 具有垃圾回收(Garbage Collect,GC)功能,能自动回收不再使用的对象。
一切都是对象 Ruby从一开始就被设计成纯粹的面向对象语言,因此以整数等基本数据类型为首的所有东西都是对象,它们都有发送信息的统一接口。
类,继承,方法 Ruby当然具有面向对象语言的基本功能。
特殊方法 可向某对象添加方法。例如,可以把GUI按钮被按下时的动作作为方法记述下来,还可以用它来进行原型库(prototypebase)的面向对象编程(有人这么干吧)。
特殊方法 可向某对象添加方法。例如,可以把GUI按钮被按下时的动作作为方法记述下来,还可以用它来进行原型库(prototypebase)的面向对象编程(有人这么干吧)。
用模块进行混合插入(Mixin) Ruby故意舍弃了多重继承,但拥有混合插入功能。使用模块来超越类的界限来共享数据和方法等。
迭代器 该功能可以将循环抽象化。
闭包 可以将某过程片段对象化。对象化后的该过程片段就称作闭包。
功能强大的字符串操作/正则表达式 以Perl为样板创造出了功能强大的字符串操作和正则表达式检索功能。
拥有超长整数 添加超长整数功能后,可以计算非常大的整数。例如计算400的阶乘也轻而易举。
具有错误处理功能 错误处理功能可以使您编写代码处理出错情况。
可以直接访问OS Ruby可以使用(UNIX的)绝大部分的系统调用。单独使用Ruby也可以进行系统编程。
动态加载 若OS支持的话,可以在运行时读入对象文件。
Ruby缺点:
1.因为Ruby是解释型语言,所以速度较慢
2.静态检查比较少
************ Ruby中简单知识 ************
注释的表示:
# ...... comment ......
方法的定义:
def method_name(param)
# ......
end
全局变量的表示:
$name
实例变量的表示:
@name
类变量的表示:
@@name
简单的Say Hello实例
# say hello method
def say_hello(usr_name)
"Hello, " + usr_name
end
# output result
puts say_hello("Warren")