设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2700|回复: 14
打印 上一主题 下一主题

据说RUBY语言的执行速度是几乎全部语言中最慢的?!

 关闭 [复制链接]

Lv2.观梦者

梦石
0
星屑
485
在线时间
177 小时
注册时间
2006-10-3
帖子
618
跳转到指定楼层
1
发表于 2008-9-14 00:46:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
据说RUBY语言的执行速度是几乎全部语言中最慢的,谁知道RUBY的运行方式?

就是说,RUBY是一边分析文本代码,一边执行指令;还是先把文本代码编译为 伪指令,然后由解释器(虚拟机)执行?
版务信息:本贴由楼主自主结贴~
在我初学RM的时候觉得脚本是高手的工具,等我学会了编程技术后才发现脚本原来是小孩子的玩具。

Lv2.观梦者

梦石
0
星屑
485
在线时间
177 小时
注册时间
2006-10-3
帖子
618
2
 楼主| 发表于 2008-9-14 00:59:44 | 只看该作者
谁知道吗?
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
485
在线时间
177 小时
注册时间
2006-10-3
帖子
618
3
 楼主| 发表于 2008-9-14 01:06:48 | 只看该作者
如果是前者,执行速度慢是必然的;如果是后者,那就不知道了
在我初学RM的时候觉得脚本是高手的工具,等我学会了编程技术后才发现脚本原来是小孩子的玩具。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
192 小时
注册时间
2007-7-14
帖子
2746
4
发表于 2008-9-14 01:13:07 | 只看该作者
  1. Ruby 简介
  2. [编辑本段]


  3. Ruby,一种为简单快捷面向对象编程(面向对象程序设计)而创的脚本语言,由日本人松本行弘(まつもとゆきひろ,英译:Yukihiro Matsumoto,外号matz)开发,遵守GPL协议和Ruby License。Ruby的作者认为Ruby > (Smalltalk + Perl) / 2,表示Ruby是一个语法像Smalltalk一样完全面向对象、脚本执行、又有Perl强大的文字处理功能的编程语言。其他特色包括:

  4. * 运算符重载
  5. * 自动垃圾回收
  6. * 弱类型(动态类型 | 标量变量)
  7. * 变量无需声明 (不必事先宣告变量)
  8. * 在Windows上,加载DLL
  9. * 巨大的标准库(函式库;Library)



  10. 历史
  11. [编辑本段]


  12. Ruby的作者于1993年2月24日开始编写Ruby,直至1995年12月才正式公开发布于fj(新闻组)。之所以称为Ruby,是因为Perl的发音与6月的诞生石pearl(珍珠)相同,因此Ruby以7月的诞生石ruby(红宝石)命名。

  13. Ruby明显比其他类似的编程语言(如Perl或Python)年轻,又因为Ruby是日本人发明的,所以早期的非日文资料和程序都比较贫乏,所以现在在网上仍然可以找到Ruby的资料太少之类的批评。约于2000年,Ruby开始进入美国,英文的资料开始发展。

  14. Ruby现在的稳定版本是1.8.6(2007年3月12日发布)。
  15. 2008年8月Ruby 1.8.7-p72 和 1.8.6-p287 发布。先前的发布版本不完全,新的版本包括了对之前发布的关于dl的漏洞的修正。


  16. Ruby 的理念
  17. [编辑本段]


  18. 减少编程时候的不必要的琐碎时间,令编写程序的人高兴,是设计 Ruby 语言的 Matz 的一个首要的考虑;其次是良好的界面设计。他强调系统设计必须强调人性化,而不是一味从机器的角度设想。
  19. “ 人们特别是电脑工程师们,常常从机器着想。他们认为:“这样做,机器就能运行的更快;这样做,机器运行效率更高;这样做,机器就会怎样怎样怎样。”实际上,我们需要从人的角度考虑问题,人们怎样编写程序或者怎样使用机器上应用程序。我们是主人,他们是仆人。 ”

  20. 遵循上述的理念,Ruby 语言通常非常直观,按照编程人认为它应该的方式运行。

  21. Semantics

  22. Ruby 是完全面向对象的:任何一点数据都是对象,包括在其他语言中的基本类型(比如:整数,布尔逻辑值),每个过程或函数都是方法。


  23. Ruby的Hello World程序
  24. [编辑本段]


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

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


  28. Ruby 的特点
  29. [编辑本段]


  30. 完全面向对象

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

  32. 变量没有类型

  33. Ruby的变量可以保有任何类型的数据。

  34. 任何东西都有值

  35. 不管是数学或者逻辑表达式还是一个语句,都有值

  36. 命名规则

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

  38. 已经定义的类可以在运行时修改

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

  40. class MyClass
  41. def the_method
  42. "general method"
  43. end
  44. end

  45. mc = MyClass.new
  46. def mc.the_method
  47. "special for this instance."
  48. end

  49. mc.the_method #special for this instance

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

  52. def matrix_mul(matrix1,matrix2)
  53. result=Array.new
  54. (0...matrix1.length).each {|i| temp=Array.new;(0...matrix2.length).each{|j| tmp=0; (0...matrix1[0].length).each {|k| matrix1[k].to_f*matrix2[k][j].to_f }; temp<<tmp}; result<<temp}
  55. return result
  56. end





  57. Ruby概述
  58. [编辑本段]


  59. Ruby是一种功能强大的面向对象的脚本语言,她可以使您方便快捷地进行面向对象编程.有时使用像Smalltalk、Eiffel或C++这样正式的面向对象语言来开发一些小项目显得有点"小题大做",而Ruby刚好可以满足这些面向对象编程的需求.当然了,您也可以使用Ruby进行普通的面向过程编程.

  60. Ruby的文本处理能力极强,与Perl不分伯仲.同时,Ruby的语法简单,还有异常处理以及迭代器等构造,使编程变得简单明了.

  61. 简而言之,您可以像使用Perl一样方便快捷地进行面向对象的开发.怎么样?赶紧试一试吧!

  62. Ruby是由松本行弘开发的免费软件.

  63. Ruby的特长

  64. 语法简单

  65. 普通的面向对象功能(类,方法调用等)

  66. 特殊的面向对象功能(Mixin,特殊方法等)

  67. 操作符重载

  68. 错误处理功能

  69. 迭代器和闭包

  70. 垃圾回收

  71. 动态载入(取决于系统架构)

  72. 可移植性高.不仅可以运行在多数UNIX上,还可以运行在DOS,Windows,Mac,BeOS等平台上

  73. Ruby的作者

  74. 松本行弘[email protected]

  75. 松本行弘"Matz"(Matsumoto Yukihiro)是Ruby语言的发明人,他从1993年起便开始着手Ruby的研发工作。他一直想发明一种语言,使你既能进行高效开发又能享受编程的快乐。1993年2月24日Ruby诞生了,1995年12月Matz推出了Ruby的第一个版本Ruby 0.95。不久Ruby便凭借其独特的魅力横扫日本,相信在不久的将来,Ruby将走向世界。
  76. --------------------------------------------------------------------------
  77. 同时,Ruby 也是国外一款眼镜的品牌,可以很方便的更换镜片.
  78. --------------------------------------------------------------------------
  79. 另外,Ruby 也作为英文名.由于音似rabbit(兔子)以及拼写方便而作为我国一部分女生十分喜爱的英文名.
  80. 比如桃子(偶的小宝贝)的英文名就是Ruby.也简称Ruru.而明星林心如的英文名也是Ruby
  81. --------------------------------------------------------------------------

  82. Ruby名字的由来
  83. [编辑本段]
  84. 首先明确一点,Ruby并不是其他单词的缩写。受Perl的影响,Matz也想用一种宝石来命名他的新语言,他使用了他的一位同事的生肖石-红宝石。后来,Matz意识到Ruby这个名字十分恰当,首先,在生肖石中,Pearl代表六月,而Ruby代表七月。在字体大小上,Pearl大小是5pt, ruby的大小是5.5pt。所以Ruby这个名字对于一种Perl的后续语言十分合适。
  85. --------------------------------------------------------------------------


  86. RGSS
  87. [编辑本段]

  88. RGSS (Ruby Game Scripting System),中文意思就是:Ruby游戏脚本系统,是一个脚本性质的游戏编程系统,并不是整个游戏都用它来生成,RGSS所能做的只是一些有限的功能,而这些功能,是由厂家也就是EnterBrain所规定的,我们只能在自己力所能及的范围内来挖掘RGSS的潜力。
  89. 脚本(Script):
  90. 脚本这个概念应用的范围很广,Windows系统里就有VBScript,JavaScript,WScript等脚本程序,Unix系统也有很多Perl,Shell等脚本程序,脚本可以解释为是一种系统内用来实现一些特定功能的有着局限性的编程环境。有的脚本可以触及到系统底层,有的却只是完成一些运算或者控制流程的功能,这取决于脚本系统的权限,也可以说取决于脚本系统所提供的库函数功能。
  91. --------------------------------------------------------------------------
  92. n.

  93. 红宝石;鲁比(女子名)

  94. n.(名词)

  95. 【复数】 ru.bies

  96. 1.A deep red, translucent variety of the mineral corundum, highly valued as a precious stone.

  97. 红宝石:深红色、半透明刚玉矿产,因是珍稀宝石价值很高

  98. 2.Something, such as a watch bearing, that is made from a ruby.

  99. 红宝石制品:用红宝石制成的东西,如表的轴承

  100. 3.Color A dark or deep red to deep purplish red.

  101. 【色彩】 红宝石色:暗红或深红与深紫色之间的一种颜色

  102. adj.Color (形容词)【色彩】

  103. Of the color ruby.


  104. 红玉色的




  105. 还有个眼镜品牌,RUBY SPORTS为台湾
复制代码


以上是内容在:http://baike.baidu.com/view/45135.htm去看看吧~~
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
485
在线时间
177 小时
注册时间
2006-10-3
帖子
618
5
 楼主| 发表于 2008-9-14 01:19:53 | 只看该作者
以下引用黑鏻于2008-9-13 17:13:07的发言:

Ruby 简介
[编辑本段]


Ruby,一种为简单快捷面向对象编程(面向对象程序设计)而创的脚本语言,由日本人松本行弘(まつもとゆきひろ,英译:Yukihiro Matsumoto,外号matz)开发,遵守GPL协议和Ruby License。Ruby的作者认为Ruby > (Smalltalk + Perl) / 2,表示Ruby是一个语法像Smalltalk一样完全面向对象、脚本执行、又有Perl强大的文字处理功能的编程语言。其他特色包括:

* 运算符重载
* 自动垃圾回收
* 弱类型(动态类型 | 标量变量)
* 变量无需声明 (不必事先宣告变量)
* 在Windows上,加载DLL
* 巨大的标准库(函式库;Library)



历史
[编辑本段]


Ruby的作者于1993年2月24日开始编写Ruby,直至1995年12月才正式公开发布于fj(新闻组)。之所以称为Ruby,是因为Perl的发音与6月的诞生石pearl(珍珠)相同,因此Ruby以7月的诞生石ruby(红宝石)命名。

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

Ruby现在的稳定版本是1.8.6(2007年3月12日发布)。
2008年8月Ruby 1.8.7-p72 和 1.8.6-p287 发布。先前的发布版本不完全,新的版本包括了对之前发布的关于dl的漏洞的修正。


Ruby 的理念
[编辑本段]


减少编程时候的不必要的琐碎时间,令编写程序的人高兴,是设计 Ruby 语言的 Matz 的一个首要的考虑;其次是良好的界面设计。他强调系统设计必须强调人性化,而不是一味从机器的角度设想。
“ 人们特别是电脑工程师们,常常从机器着想。他们认为:“这样做,机器就能运行的更快;这样做,机器运行效率更高;这样做,机器就会怎样怎样怎样。”实际上,我们需要从人的角度考虑问题,人们怎样编写程序或者怎样使用机器上应用程序。我们是主人,他们是仆人。 ”

遵循上述的理念,Ruby 语言通常非常直观,按照编程人认为它应该的方式运行。

Semantics

Ruby 是完全面向对象的:任何一点数据都是对象,包括在其他语言中的基本类型(比如:整数,布尔逻辑值),每个过程或函数都是方法。


Ruby的Hello World程序
[编辑本段]


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

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


Ruby 的特点
[编辑本段]


完全面向对象

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

变量没有类型

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

任何东西都有值

不管是数学或者逻辑表达式还是一个语句,都有值

命名规则

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

已经定义的类可以在运行时修改

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

class MyClass
def the_method
"general method"
end
end

mc = MyClass.new
def mc.the_method
"special for this instance."
end

mc.the_method #special for this instance

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

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





Ruby概述
[编辑本段]


Ruby是一种功能强大的面向对象的脚本语言,她可以使您方便快捷地进行面向对象编程.有时使用像Smalltalk、Eiffel或C++这样正式的面向对象语言来开发一些小项目显得有点"小题大做",而Ruby刚好可以满足这些面向对象编程的需求.当然了,您也可以使用Ruby进行普通的面向过程编程.

Ruby的文本处理能力极强,与Perl不分伯仲.同时,Ruby的语法简单,还有异常处理以及迭代器等构造,使编程变得简单明了.

简而言之,您可以像使用Perl一样方便快捷地进行面向对象的开发.怎么样?赶紧试一试吧!

Ruby是由松本行弘开发的免费软件.

Ruby的特长

语法简单

普通的面向对象功能(类,方法调用等)

特殊的面向对象功能(Mixin,特殊方法等)

操作符重载

错误处理功能

迭代器和闭包

垃圾回收

动态载入(取决于系统架构)

可移植性高.不仅可以运行在多数UNIX上,还可以运行在DOS,Windows,Mac,BeOS等平台上

Ruby的作者

松本行弘[email protected]

松本行弘"Matz"(Matsumoto Yukihiro)是Ruby语言的发明人,他从1993年起便开始着手Ruby的研发工作。他一直想发明一种语言,使你既能进行高效开发又能享受编程的快乐。1993年2月24日Ruby诞生了,1995年12月Matz推出了Ruby的第一个版本Ruby 0.95。不久Ruby便凭借其独特的魅力横扫日本,相信在不久的将来,Ruby将走向世界。
--------------------------------------------------------------------------
同时,Ruby 也是国外一款眼镜的品牌,可以很方便的更换镜片.
--------------------------------------------------------------------------
另外,Ruby 也作为英文名.由于音似rabbit(兔子)以及拼写方便而作为我国一部分女生十分喜爱的英文名.
比如桃子(偶的小宝贝)的英文名就是Ruby.也简称Ruru.而明星林心如的英文名也是Ruby
--------------------------------------------------------------------------

Ruby名字的由来
[编辑本段]
首先明确一点,Ruby并不是其他单词的缩写。受Perl的影响,Matz也想用一种宝石来命名他的新语言,他使用了他的一位同事的生肖石-红宝石。后来,Matz意识到Ruby这个名字十分恰当,首先,在生肖石中,Pearl代表六月,而Ruby代表七月。在字体大小上,Pearl大小是5pt, ruby的大小是5.5pt。所以Ruby这个名字对于一种Perl的后续语言十分合适。
--------------------------------------------------------------------------


RGSS
[编辑本段]

RGSS (Ruby Game Scripting System),中文意思就是:Ruby游戏脚本系统,是一个脚本性质的游戏编程系统,并不是整个游戏都用它来生成,RGSS所能做的只是一些有限的功能,而这些功能,是由厂家也就是EnterBrain所规定的,我们只能在自己力所能及的范围内来挖掘RGSS的潜力。
脚本(Script):
脚本这个概念应用的范围很广,Windows系统里就有VBScript,JavaScript,WScript等脚本程序,Unix系统也有很多Perl,Shell等脚本程序,脚本可以解释为是一种系统内用来实现一些特定功能的有着局限性的编程环境。有的脚本可以触及到系统底层,有的却只是完成一些运算或者控制流程的功能,这取决于脚本系统的权限,也可以说取决于脚本系统所提供的库函数功能。
--------------------------------------------------------------------------
n.

红宝石;鲁比(女子名)

n.(名词)

【复数】 ru.bies

1.A deep red, translucent variety of the mineral corundum, highly valued as a precious stone.

红宝石:深红色、半透明刚玉矿产,因是珍稀宝石价值很高

2.Something, such as a watch bearing, that is made from a ruby.

红宝石制品:用红宝石制成的东西,如表的轴承

3.Color A dark or deep red to deep purplish red.

【色彩】 红宝石色:暗红或深红与深紫色之间的一种颜色

adj.Color (形容词)【色彩】

Of the color ruby.


红玉色的




还有个眼镜品牌,RUBY SPORTS为台湾



以上是内容在:http://baike.baidu.com/view/45135.htm去看看吧~~


终于有人回答了,thank you先!
不过这篇文章里还是没有说明ruby的运行方式哈
在我初学RM的时候觉得脚本是高手的工具,等我学会了编程技术后才发现脚本原来是小孩子的玩具。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
238 小时
注册时间
2006-10-2
帖子
417
6
发表于 2008-9-14 01:22:23 | 只看该作者
ruby是慢,但是简单。而且有RGSS这样一个包装得差不多了的脚本系统。你只要会用ruby写脚本就可以做游戏了。
山寨产品龟速制作中……
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
485
在线时间
177 小时
注册时间
2006-10-3
帖子
618
7
 楼主| 发表于 2008-9-14 01:26:03 | 只看该作者
以下引用猫哥哥于2008-9-13 17:22:23的发言:

ruby是慢,但是简单。而且有RGSS这样一个包装得差不多了的脚本系统。你只要会用ruby写脚本就可以做游戏了。

如果是前者,那只要将RUBY的运行方式改成后者,就可以大大提高执行速度饿!
在我初学RM的时候觉得脚本是高手的工具,等我学会了编程技术后才发现脚本原来是小孩子的玩具。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
238 小时
注册时间
2006-10-2
帖子
417
8
发表于 2008-9-14 01:32:00 | 只看该作者
以下引用流川枫于2008-9-13 17:26:03的发言:


以下引用猫哥哥于2008-9-13 17:22:23的发言:

ruby是慢,但是简单。而且有RGSS这样一个包装得差不多了的脚本系统。你只要会用ruby写脚本就可以做游戏了。


如果是前者,那只要将RUBY的运行方式改成后者,就可以大大提高执行速度饿!


{/fd}我没有弄明白懂你的意思哦,小弟弟
山寨产品龟速制作中……
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
72
在线时间
673 小时
注册时间
2006-10-3
帖子
1795

开拓者

9
发表于 2008-9-14 01:37:11 | 只看该作者
RUBY比我朋友用VB写的xywhcode解释速度都慢
( ส็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็ ω ส้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้【看猫君玩,我也搞一只】)
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
485
在线时间
177 小时
注册时间
2006-10-3
帖子
618
10
 楼主| 发表于 2008-9-14 01:48:32 | 只看该作者
以下引用猫哥哥于2008-9-13 17:32:00的发言:


以下引用流川枫于2008-9-13 17:26:03的发言:


以下引用猫哥哥于2008-9-13 17:22:23的发言:

ruby是慢,但是简单。而且有RGSS这样一个包装得差不多了的脚本系统。你只要会用ruby写脚本就可以做游戏了。


如果是前者,那只要将RUBY的运行方式改成后者,就可以大大提高执行速度饿!



我没有弄明白懂你的意思哦,小弟弟

大哥哥,心急吃不了臭豆腐!
在我初学RM的时候觉得脚本是高手的工具,等我学会了编程技术后才发现脚本原来是小孩子的玩具。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-1-24 05:38

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表