软件程序员松本幸弘(Yukihiro Matsumoto)“ Matz”是一名软件程序员,日本计算机科学家在1990年代中期开发和设计了Ruby。将语言命名为“ Ruby”背后有一个引人入胜的故事。Matz和Keiju Ishitsuka(Matz的同事)之间进行了在线聊天,在此过程中,在为该语言编写任何代码之前,为该语言提出了两个名称,一个是Coral,后来是Ruby。后来的一位被选为Ruby是松本一位同事的诞生石。
Ruby 0.95是1995年发布的Ruby的第一个版本,然后在随后的几年中发布了各种实质性的版本:
1996年,Ruby 1.0发布。
1998年,Ruby 1.2投放市场。
Ruby 1.4和Ruby 1.6分别于1999年和2000年发布。
在引入了许多具有更好功能的版本之后,Ruby的最新版本是Ruby 2.6.0,该版本于2018年圣诞节发布。
面向
对象面向对象的编程使用了编程标准,该标准利用对象及其交互来开发应用程序和计算机程序。Ruby是一种具有一些过程功能的面向对象语言。Rudy支持的基本功能是:
抽象:抽象是通过建模适合该问题的类来阐明复杂的现实。
多态性:多态性简单地指许多形式。对象或功能/方法可以以不同的方式用于不同的数据输入。
封装:封装是通过隐藏特定对象的值或状态来防止对象受到未经授权的访问的过程。
继承:这是一种通过派生现有类的属性来创建新类的方法。这就像一个亲子场景。
支持
Mixin和Metaclasses Mixin是OOPS的一项功能,它允许一个类的方法由另一个类使用,而无需将Method的类声明为正在访问其方法的该类的父类。此功能称为Mixin。
元类是一种类,其对象也是一个类。普通类定义某些实例的行为,而元类定义精确类及其对象的行为。
支持动态键入和Duck键入
Ruby支持动态键入,这意味着在运行时检查或验证变量的数据类型。在大多数情况下,在运行时未指定变量或对象的类型。
鸭子类型可以简单地定义为确定对象是否可以用于指定目的的过程。
解释语言
Ruby是一种解释语言,这意味着它的大多数指令都可以直接自由执行,而无需事先将程序编译成其本机或字节码。
垃圾回收
Ruby支持垃圾回收,这是一种自动内存管理,这意味着它会自动将内存分配给变量,并在不使用内存时将其取消分配。它是“手动内存管理”的反义词,程序员在其中需要通过指令为对象分配和释放内存。
它具有更少的代码行数,这使其成为一种优雅而强大的语言。
它允许轻松创建Web应用程序,而这需要较少的工作量并使编程变得容易。
Ruby的语法非常接近口语,因此易于记忆和编码。
它是一种脚本语言与编译语言相比,口译语言和脚本语言要慢。
它的大多数代码是在运行时生成的,这使得调试时很难阅读。