JSRUN 用代码说话

在线运行,Ruby在线编译,支持手机在线编程写代码

编辑教程

简介

Ruby是一种面向对象解释型的脚本语言,号称语言极为优雅,可以做到不需要注释就可以读懂。 由日本人松本行弘(Yukihiro Matsumoto)于1993年2月24日开始编写,并于1995年12月发布。 语言本身还发展出了JRuby(Java平台)、IronRuby(.NET平台)等其他平台的 Ruby 语言替代品。

发展历程

Ruby明显比其他类似的编程语言(如Perl或Python)年轻,又因为Ruby是日本人发明的,所以早期的非日文资料和程序都比较贫乏,所以在网上仍然可以找到类似“Ruby的资料太少”之类的批评。

约于2000年,Ruby开始进入美国,英文的资料开始发展。Ruby归根结底源于Perl和Python两类语言,与C,C++,C#,java是不同大类。

Ruby 标识

  • 2011年10月31日1.9.3的第一个稳定版本1.9.3p0发布。
  • 2013年2月22日发布了Ruby 1.9.3-p392。
  • 2013年2月24日发布了Ruby 2.0.0-p0。
  • 2015年4月13日发布了Ruby 2.2.2。
  • 2015年12月25日发布了Ruby 2.3.0。

语言标准

Ruby的变量有一定的规则,以$开头的一定是全局变量,以@开头的都是实例变量,而以@@开头的是类变量。常数则以大写字母开头;这种方法,对文本编辑器的命令补全很有帮助,如在vim下先键入$及开头字母,再敲击Ctrl+p,则可专门补全本文件以及关联文件中的全局变量,perl与php亦有此优点。 已经定义的类可以在运行时修改

Ruby是动态语言,你可以在程序中修改先前定义过的类。 也可以在某个类的实例中定义该实例特有的方法,这叫做单例方法。

class MyClass
    def the_method
        "generalmethod"
    end
end
mc=MyClass.new
def mc.the_method
    "special for this instance."
end
mc.the_method#specialforthisinstance

使用Ruby可以写出简短而又功能强大的代码 下面的方法用来完成两个矩阵的乘积

def matrix_mul(matrix1,matrix2)
    result=[]
    (0...matrix1.length).each{|i|
        temp=[]
        (0...matrix2[0].length).each{|j|
            tmp=0
            (0...matrix1[0].length).each{|k|
                tmp+=matrix1[i][k]*matrix2[k][j]
            }
            temp<<tmp
        }
        result<<temp
    }
    return result
end

注:ruby标准库中已包含矩阵库 Matrix


语言特点

完全面向对象

在Ruby语言中,任何东西都是对象,包括其他语言中的基本数据类型,比如整数

变量没有类型

Ruby的变量可以保存任何类型的数据。

任何东西都有值

不管是数学或者逻辑表达式还是一个语句,都会有值。 ruby语言很优雅,可以做到不需要注释就可以读懂。

优点

  • 语法简单
  • 普通的面向对象功能(类,方法调用等)
  • 特殊的面向对象功能(Mixin,特殊方法等)
  • 操作符重载
  • 错误处理功能
  • 迭代器和闭包
  • 垃圾回收
  • 动态载入(取决于系统架构)
  • 可移植性高.不仅可以运行在多数UNIX上,还可以运行在DOS,Windows,Mac,BeOS等平台上
  • 适合于快速开发,一般开发效率是JAVA的5倍
  • Ruby 是完全面向对象的:任何一点数据都是对象,包括在其他语言中的基本类型(比如:整数,布尔逻辑值),每个过程或函数都是方法。

语言理念编辑

减少编程时候的不必要的琐碎时间,令编写程序的人高兴,是设计 Ruby 语言的 Matz 的一个首要的考虑;其次是良好的界面设计。

他强调系统设计必须注重人性化,而不是一味从机器的角度设想。

“ 人们特别是电脑工程师们,常常从机器着想。他们认为:‘这样做,机器就能运行的更快;这样做,机器运行效率更高;这样做,机器就会怎样怎样怎样。’实际上,我们需要从人的角度考虑问题,人们怎样编写程序或者怎样使用机器上应用程序。我们是主人,他们是仆人。 ” 遵循上述的理念,Ruby 语言通常非常直观,按照编程人认为它应该的方式运行。

下面是一个在标准输出设备上输出Hello World的简单程序,这种程序通常作为开始学习编程语言时的第一个程序:

#!/usr/bin/env ruby
puts "Hello, world!"

语言用途

  • Ruby 是开源的,在Web 上免费提供,但需要一个许可证。
  • Ruby 是一种通用的、解释的编程语言。
  • Ruby 是一种真正的面向对象编程语言。
  • Ruby 是一种类似于 Python 和 Perl 的服务器端脚本语言。
  • Ruby 可以用来编写通用网关接口(CGI)脚本。
  • Ruby 可以被嵌入到超文本标记语言(HTML)。
  • Ruby 语法简单,这使得新的开发人员能够快速轻松地学习 Ruby。
  • Ruby 与 C++ 和 Perl 等许多编程语言有着类似的语法。
  • Ruby 可扩展性强,用 Ruby 编写的大程序易于维护。
  • Ruby 可用于开发的 Internet 和 Intranet 应用程序。
  • Ruby 可以安装在 Windows 和 POSIX 环境中。
  • Ruby 支持许多 GUI 工具,比如 Tcl/Tk、GTK 和 OpenGL。
  • Ruby 可以很容易地连接到 DB2、MySQL、Oracle 和 Sybase。
  • Ruby 有丰富的内置函数,可以直接在 Ruby 脚本中使用。
JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。 大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
支付宝
9.99
无法付款,请点击这里
如遇到支付问题请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟
谢谢支持,我一定会更加努力的