- 浏览: 648450 次
- 性别:
- 来自: Shanghai
文章分类
最新评论
-
107x:
不错,谢谢!
Vim多行缩进技巧 -
can007:
EC2是不负责储存???
体验Amazon EC2 -
vanxining:
书名是什么呢?
Neural Network依然不是理想的AI -
贾懂凯:
缩进的标准是tab,linux默认tab=8。在不同的平台会出 ...
Vim多行缩进技巧 -
edison0951:
貌似他的老师是波谱尔吧,和黑天鹅讲的东西差不多
索罗斯与因果论
布娃娃在另一个帖子提到很多差别,我觉得和那个主题不符,所以另外开一个贴讨论吧。
其实python和ruby非常接近,比大多数别的语言要接近的多,所以喜欢用啥就用啥(大实话,虽然也是废话)。语法上的差别虽然有那么一点,大部分是syntax sugar,我斗胆稍微列几个(python我也忘得差不多了,不对的大家尽管来鞭尸吧),但是主要差异还是设计思想上的:灵活vs明确. 我不认为两者在生产力上会有什么差别,如果你熟悉的话。*注意,仅限语言本身的比较。
1. ruby的case可以匹配很多东西:范围/数组,对象,正则表达,python没有case/switch而使用if/else比较死板点
2. python的缩进很漂亮,虽然有时会造成些许麻烦。ruby的end蛮难看的,所以大家都被逼当one liner(玩笑)
3. 感觉上ruby比python更OO,当然这也可能是因为python不提倡用那些改变对象内部构造的‘伎俩’造成的错觉
4. python有list comprehension, ruby没有:(
5. python有真正的keyword argument, ruby用hash模拟,当然实际用起来没什么差别
6. python的self很讨厌,ruby没有那种繁琐的东西
7. reflection,ruby内置了很多方法,比如object.methods,而python把这些信息存在特殊的字典里。差不多
8. ruby的block功能很强,python的lambda只能返回单一值
9. ruby的open class已经声明远播,可以玩出2.days.ago这样的花样,python好像没法直接修改内置类也反对这么做。
10. python需要用@classmethod修饰声明类方法,ruby是内建
11. ruby有单子方法,也就对对象单独定制,python不知道有没有类似概念
12. ruby有method_missing机制,python可以使用__getattr__截获未定义方法(from qiezi)
13. ruby使用单继承+mixin,python使用多重继承,不过python也有mixin
14. ruby有attr_*系列语法helper,省却自己写一堆setter/getter, python的property方法还是得自己写setter/getter
15. ruby和python都使用duck typing,不过python也有一套显式的interface机制(从zope3并入内核了么?)
16. ruby的函数调用括号是可省的,稍微少敲几下键盘。python默认没括号也不带参数的话返回函数本身的一个引用。
17. 我不清楚python的meta programming能到什么程度,只好等大牛来说说了。只是觉得pythoner不常用那个,也许觉得会把程序逻辑搞得晦涩不明。
18. ruby从perl继承了一部分难看的东西,比如很多预定义的$x常量
19. ruby内建正则表达,方便一点
20. ruby的yield是用来call block的。而python的yield是用来给generator输入输出值的。
21. python的库给我感觉命名规范有点不统一,有些方法用snake_case有些则用CamelCase,也许是库太多了遗留下的历史问题
22. python的三引号很漂亮,ruby的<<-XX...XX太难看了,也可以用%q{...}包裹多行文字(from qiezi)
23. ruby的类库设计中喜欢给方法添加别名,方便记忆。
另: ruby官方网站也提供了一些基本的比较。(from Robbin)
getter/setter是基本OO封装概念,ruby里局部变量默认全是private的,不写getter/setter就没法访问
ruby也有self吧,当年理解self.some_method()花了好长时间,不过可能和python中的self不是一个概念……
python的self比较冗余,比如
ruby的实例方法不需要用self明确绑定,另外使用@来表示实例变量。
ruby也有self吧,当年理解self.some_method()花了好长时间,不过可能和python中的self不是一个概念……
A说它X,B就笑了;B说它Y,C就笑了……
robbin给的link不错。
说实话,我对ruby, python的一点知识,都是从这类比较资料上来的。这方面的资料太多了,简直罄竹难书。
不过,好东西不嫌多,cookoo的这个总结,又列出了和其他资料不重合的独特的东西。
我看过最全的一个 From Python to Ruby 来自于一本叫做 The Ruby Way的一本书。简直太全了。只列出条目了。内容很多,可以细看。(小朋友们,请不要问哪里有这本书这类问题)
From Python to Ruby
A Different World View
A Different Program Model
Some Syntax Differences
Keywords
Variable Prefixes
Objects
Methods
Methods and Dot Notation
Method Calls and Parentheses
Method Naming Conflicts
Parameters and Default Arguments
procs and iterator Blocks
Statements and Expressions
Basic I/O
Numbers
Strings
True and False Values
Arrays
Dictionaries Are Hashes
Classes
Modules
Threading Model,
Exception Handling
Garbage Collection
Extensions
Some More Equivalencies
Other Notes
哈,看来我忘了很多基本的东西,惭愧
ruby的end有很多办法避免使用,但是不得已出现深度嵌套的时候就很难看了。
Ruby的yield和Python的yield是两码事,Ruby的yield相当于SmallTalk的value,是对block求值的。Python的yield我记得是可以用来生成Generator的。coroutine我怎么记得是用Continuation实现的,这样的话Ruby应该也能实现,而且Ruby的Generator就是用Continuation实现的。
嗯,这是两个完全不同的东西,比较失当。python2.5的yield只是多了传值给generator功能,是我误解了成能实现coroutine了。
cool koo.
俺最关心的
module, package, import, static import, require,
这些呢?
python可以用from x import y导入x模块的y到当前命名空间;ruby要么include一个module里所有的顶层对象名,要么只require然后X::Y这么用。当然这不是大问题,module设计的时候用命名域切分就行了,然后include X::Y也是一样的。至于python的包有__init__.py,ruby就直接写在被require的文件里了,效果也是一样。
4. python有list comprehension, ruby没有:(
用map和select先凑合着。
12. ruby有method_missing机制,python不知道有没有类似机制
我只知道有个__getattr__:
这2行调用将打印出a和b。不知道还有没有别的方法,method_missing功能应该算是有了。
20. python的三引号很漂亮,ruby的<<-XX...XX太难看了
也还是可以使用%q嘛,我觉得也还看得过去。
cool koo.
俺最关心的
module, package, import, static import, require,
这些呢?
其实python和ruby非常接近,比大多数别的语言要接近的多,所以喜欢用啥就用啥(大实话,虽然也是废话)。语法上的差别虽然有那么一点,大部分是syntax sugar,我斗胆稍微列几个(python我也忘得差不多了,不对的大家尽管来鞭尸吧),但是主要差异还是设计思想上的:灵活vs明确. 我不认为两者在生产力上会有什么差别,如果你熟悉的话。*注意,仅限语言本身的比较。
1. ruby的case可以匹配很多东西:范围/数组,对象,正则表达,python没有case/switch而使用if/else比较死板点
2. python的缩进很漂亮,虽然有时会造成些许麻烦。ruby的end蛮难看的,所以大家都被逼当one liner(玩笑)
3. 感觉上ruby比python更OO,当然这也可能是因为python不提倡用那些改变对象内部构造的‘伎俩’造成的错觉
4. python有list comprehension, ruby没有:(
5. python有真正的keyword argument, ruby用hash模拟,当然实际用起来没什么差别
6. python的self很讨厌,ruby没有那种繁琐的东西
7. reflection,ruby内置了很多方法,比如object.methods,而python把这些信息存在特殊的字典里。差不多
8. ruby的block功能很强,python的lambda只能返回单一值
9. ruby的open class已经声明远播,可以玩出2.days.ago这样的花样,python好像没法直接修改内置类也反对这么做。
10. python需要用@classmethod修饰声明类方法,ruby是内建
11. ruby有单子方法,也就对对象单独定制,python不知道有没有类似概念
12. ruby有method_missing机制,python可以使用__getattr__截获未定义方法(from qiezi)
13. ruby使用单继承+mixin,python使用多重继承,不过python也有mixin
14. ruby有attr_*系列语法helper,省却自己写一堆setter/getter, python的property方法还是得自己写setter/getter
15. ruby和python都使用duck typing,不过python也有一套显式的interface机制(从zope3并入内核了么?)
16. ruby的函数调用括号是可省的,稍微少敲几下键盘。python默认没括号也不带参数的话返回函数本身的一个引用。
17. 我不清楚python的meta programming能到什么程度,只好等大牛来说说了。只是觉得pythoner不常用那个,也许觉得会把程序逻辑搞得晦涩不明。
18. ruby从perl继承了一部分难看的东西,比如很多预定义的$x常量
19. ruby内建正则表达,方便一点
20. ruby的yield是用来call block的。而python的yield是用来给generator输入输出值的。
21. python的库给我感觉命名规范有点不统一,有些方法用snake_case有些则用CamelCase,也许是库太多了遗留下的历史问题
22. python的三引号很漂亮,ruby的<<-XX...XX太难看了,也可以用%q{...}包裹多行文字(from qiezi)
23. ruby的类库设计中喜欢给方法添加别名,方便记忆。
另: ruby官方网站也提供了一些基本的比较。(from Robbin)
评论
17 楼
ajoo
2006-10-10
我说几个ruby让我不爽的地方,pythoner来说说python是不是更好
1。block/proc的区别。概念冗余。而且造成meta-code写起来有障碍。python是不是只有lambda?
2。require不是像java的import一样只输入符号表,而是执行一个文件。更象c的#include。而且require还不能有效检查两个文件是否相同。
3。没有包私有概念。
4。没有一个module loader的概念。一个库的文件之间依赖,还要写require 'mylibname/filename'。这个mylibname很别扭。
5。string不是unicode的。
6。string是mutable的。
1。block/proc的区别。概念冗余。而且造成meta-code写起来有障碍。python是不是只有lambda?
2。require不是像java的import一样只输入符号表,而是执行一个文件。更象c的#include。而且require还不能有效检查两个文件是否相同。
3。没有包私有概念。
4。没有一个module loader的概念。一个库的文件之间依赖,还要写require 'mylibname/filename'。这个mylibname很别扭。
5。string不是unicode的。
6。string是mutable的。
16 楼
cookoo
2006-10-10
Jamsa 写道
为什么说python要写getter/setter呢?直接赋值不就可以了,又没有保护
getter/setter是基本OO封装概念,ruby里局部变量默认全是private的,不写getter/setter就没法访问
15 楼
cookoo
2006-10-10
刑天战士 写道
cookoo 写道
6. python的self很讨厌,ruby没有那种繁琐的东西
ruby也有self吧,当年理解self.some_method()花了好长时间,不过可能和python中的self不是一个概念……
python的self比较冗余,比如
class MyTextWidget(Widget): def __init__(self, master, text="", font="times", color="black"): Widget.__init__(self, master) self.font = self.ui_font(color, font) self.text = text def ui_handle_repair(self, draw, x0, y0, x1, y1): draw.text((0, 0), self.text, self.font)
ruby的实例方法不需要用self明确绑定,另外使用@来表示实例变量。
14 楼
Jamsa
2006-10-10
test ajax
13 楼
Jamsa
2006-10-10
为什么说python要写getter/setter呢?直接赋值不就可以了,又没有保护
12 楼
刑天战士
2006-10-10
cookoo 写道
6. python的self很讨厌,ruby没有那种繁琐的东西
ruby也有self吧,当年理解self.some_method()花了好长时间,不过可能和python中的self不是一个概念……
11 楼
Nicholas_Ding
2006-09-29
原话可能是 "Smalltalk did that twenty years ago" 和 "Nothing has been invented since Lisp"。
10 楼
ShiningRay
2006-09-27
cookoo 写道
布娃娃在另一个帖子提到很多差别,我觉得和那个主题不符,所以另外开一个贴讨论吧。
其实python和ruby非常接近,比大多数别的语言要接近的多,所以喜欢用啥就用啥(大实话,虽然也是废话)。语法上的差别虽然有那么一点,大部分是syntax sugar,我斗胆稍微列几个(python我也忘得差不多了,不对的大家尽管来鞭尸吧),但是主要差异还是设计思想上的:灵活vs明确. 我不认为两者在生产力上会有什么差别,如果你熟悉的话。*注意,仅限语言本身的比较。
1. ruby的case可以匹配很多东西:范围/数组,对象,正则表达,python没有case/switch而使用if/else比较死板点
2. python的缩进很漂亮,虽然有时会造成些许麻烦。ruby的end蛮难看的,所以大家都被逼当one liner(玩笑)
3. 感觉上ruby比python更OO,当然这也可能是因为python不提倡用那些改变对象内部构造的‘伎俩’造成的错觉
4. python有list comprehension, ruby没有:(
5. python有真正的keyword argument, ruby用hash模拟,当然实际用起来没什么差别
6. python的self很讨厌,ruby没有那种繁琐的东西
7. reflection,ruby内置了很多方法,比如object.methods,而python把这些信息存在特殊的字典里。差不多
8. ruby的block很强,python的lambda只能声明单变量
9. ruby的open class已经声明远播,可以玩出2.days.ago这样的花样,python好像没法直接修改内置类也反对这么做。
10. python需要用@classmethod修饰声明类方法,ruby是内建
11. ruby有单子方法,也就对对象单独定制,python不知道有没有类似概念
12. ruby有method_missing机制,python可以使用__getattr__截获未定义方法(from qiezi)
13. ruby使用单继承+mixin,python使用多重继承,不过python也有mixin
14. ruby有attr_*系列语法helper,省却自己写一堆setter/getter, python的property方法还是得自己写setter/getter
15. ruby和python都使用duck typing,不过python也有一套显式的interface机制(从zope3并入内核了么?)
16. ruby的函数调用括号是可省的,稍微少敲几下键盘。python默认没括号也不带参数的话返回函数本身的一个引用。
17. 我不清楚python的meta programming能到什么程度,只好等大牛来说说了。只是觉得pythoner不常用那个,也许觉得会把程序逻辑搞得晦涩不明。
18. ruby从perl继承了一部分难看的东西,比如很多预定义的$x常量
19. ruby内建正则表达,方便一点
20. ruby的yield是用来call block的。而python的yield是用来给generator输入输出值的。
19. python的库给我感觉命名规范有点不统一,有些方法用snake_case有些则用CamelCase,也许是库太多了遗留下的历史问题
20. python的三引号很漂亮,ruby的<<-XX...XX太难看了,也可以用%q{...}包裹多行文字(from qiezi)
21. ruby的类库设计中喜欢给方法添加别名,方便记忆。
另: ruby官方网站也提供了一些基本的比较。(from Robbin)
其实python和ruby非常接近,比大多数别的语言要接近的多,所以喜欢用啥就用啥(大实话,虽然也是废话)。语法上的差别虽然有那么一点,大部分是syntax sugar,我斗胆稍微列几个(python我也忘得差不多了,不对的大家尽管来鞭尸吧),但是主要差异还是设计思想上的:灵活vs明确. 我不认为两者在生产力上会有什么差别,如果你熟悉的话。*注意,仅限语言本身的比较。
1. ruby的case可以匹配很多东西:范围/数组,对象,正则表达,python没有case/switch而使用if/else比较死板点
2. python的缩进很漂亮,虽然有时会造成些许麻烦。ruby的end蛮难看的,所以大家都被逼当one liner(玩笑)
3. 感觉上ruby比python更OO,当然这也可能是因为python不提倡用那些改变对象内部构造的‘伎俩’造成的错觉
4. python有list comprehension, ruby没有:(
5. python有真正的keyword argument, ruby用hash模拟,当然实际用起来没什么差别
6. python的self很讨厌,ruby没有那种繁琐的东西
7. reflection,ruby内置了很多方法,比如object.methods,而python把这些信息存在特殊的字典里。差不多
8. ruby的block很强,python的lambda只能声明单变量
9. ruby的open class已经声明远播,可以玩出2.days.ago这样的花样,python好像没法直接修改内置类也反对这么做。
10. python需要用@classmethod修饰声明类方法,ruby是内建
11. ruby有单子方法,也就对对象单独定制,python不知道有没有类似概念
12. ruby有method_missing机制,python可以使用__getattr__截获未定义方法(from qiezi)
13. ruby使用单继承+mixin,python使用多重继承,不过python也有mixin
14. ruby有attr_*系列语法helper,省却自己写一堆setter/getter, python的property方法还是得自己写setter/getter
15. ruby和python都使用duck typing,不过python也有一套显式的interface机制(从zope3并入内核了么?)
16. ruby的函数调用括号是可省的,稍微少敲几下键盘。python默认没括号也不带参数的话返回函数本身的一个引用。
17. 我不清楚python的meta programming能到什么程度,只好等大牛来说说了。只是觉得pythoner不常用那个,也许觉得会把程序逻辑搞得晦涩不明。
18. ruby从perl继承了一部分难看的东西,比如很多预定义的$x常量
19. ruby内建正则表达,方便一点
20. ruby的yield是用来call block的。而python的yield是用来给generator输入输出值的。
19. python的库给我感觉命名规范有点不统一,有些方法用snake_case有些则用CamelCase,也许是库太多了遗留下的历史问题
20. python的三引号很漂亮,ruby的<<-XX...XX太难看了,也可以用%q{...}包裹多行文字(from qiezi)
21. ruby的类库设计中喜欢给方法添加别名,方便记忆。
另: ruby官方网站也提供了一些基本的比较。(from Robbin)
A说它X,B就笑了;B说它Y,C就笑了……
9 楼
buaawhl
2006-09-25
robbin给的link不错。
说实话,我对ruby, python的一点知识,都是从这类比较资料上来的。这方面的资料太多了,简直罄竹难书。
不过,好东西不嫌多,cookoo的这个总结,又列出了和其他资料不重合的独特的东西。
我看过最全的一个 From Python to Ruby 来自于一本叫做 The Ruby Way的一本书。简直太全了。只列出条目了。内容很多,可以细看。(小朋友们,请不要问哪里有这本书这类问题)
From Python to Ruby
A Different World View
A Different Program Model
Some Syntax Differences
Keywords
Variable Prefixes
Objects
Methods
Methods and Dot Notation
Method Calls and Parentheses
Method Naming Conflicts
Parameters and Default Arguments
procs and iterator Blocks
Statements and Expressions
Basic I/O
Numbers
Strings
True and False Values
Arrays
Dictionaries Are Hashes
Classes
Modules
Threading Model,
Exception Handling
Garbage Collection
Extensions
Some More Equivalencies
Other Notes
8 楼
cookoo
2006-09-25
robbin 写道
http://www.ruby-lang.org/en/documentation/ruby-from-other-languages/to-ruby-from-python/
哈,看来我忘了很多基本的东西,惭愧
7 楼
cookoo
2006-09-25
njmzhang 写道
有的地方我的感觉跟你不一样,
比如我比较喜欢用end,程序看起来有层次感,先是一层层的缩进去,再一层层的退回来。Python的indent很讨厌,多缩进几层后,再缩回来还得数一数。 Ruby的if/case等语句实际上是表达式,可以接在赋值号后面的,所以也不好强制indent
比如我比较喜欢用end,程序看起来有层次感,先是一层层的缩进去,再一层层的退回来。Python的indent很讨厌,多缩进几层后,再缩回来还得数一数。 Ruby的if/case等语句实际上是表达式,可以接在赋值号后面的,所以也不好强制indent
ruby的end有很多办法避免使用,但是不得已出现深度嵌套的时候就很难看了。
引用
Ruby的yield和Python的yield是两码事,Ruby的yield相当于SmallTalk的value,是对block求值的。Python的yield我记得是可以用来生成Generator的。coroutine我怎么记得是用Continuation实现的,这样的话Ruby应该也能实现,而且Ruby的Generator就是用Continuation实现的。
嗯,这是两个完全不同的东西,比较失当。python2.5的yield只是多了传值给generator功能,是我误解了成能实现coroutine了。
6 楼
robbin
2006-09-25
http://www.ruby-lang.org/en/documentation/ruby-from-other-languages/to-ruby-from-python/
5 楼
uncutstone
2006-09-25
不错,cookoo 的总结信息量很丰富啊。
4 楼
cookoo
2006-09-25
buaawhl 写道
cool koo.
俺最关心的
module, package, import, static import, require,
这些呢?
python可以用from x import y导入x模块的y到当前命名空间;ruby要么include一个module里所有的顶层对象名,要么只require然后X::Y这么用。当然这不是大问题,module设计的时候用命名域切分就行了,然后include X::Y也是一样的。至于python的包有__init__.py,ruby就直接写在被require的文件里了,效果也是一样。
3 楼
njmzhang
2006-09-25
有的地方我的感觉跟你不一样,
比如我比较喜欢用end,程序看起来有层次感,先是一层层的缩进去,再一层层的退回来。Python的indent很讨厌,多缩进几层后,再缩回来还得数一数。 Ruby的if/case等语句实际上是表达式,可以接在赋值号后面的,所以也不好强制indent
Ruby2可能会引入keyword argument。
Ruby的yield和Python的yield是两码事,Ruby的yield相当于SmallTalk的value,是对block求值的。Python的yield我记得是可以用来生成Generator的。coroutine我怎么记得是用Continuation实现的,这样的话Ruby应该也能实现,而且Ruby的Generator就是用Continuation实现的。
Ruby和Python里都有一些比较丑的东西,Ruby的Perl变量,Python的self和双下划线。另外我比较不能理解的是像abs这样只对数字有用的函数为什么要放到builtin模块
Python的模块好像做得比较好,还有Package初始化。
比如我比较喜欢用end,程序看起来有层次感,先是一层层的缩进去,再一层层的退回来。Python的indent很讨厌,多缩进几层后,再缩回来还得数一数。 Ruby的if/case等语句实际上是表达式,可以接在赋值号后面的,所以也不好强制indent
Ruby2可能会引入keyword argument。
Ruby的yield和Python的yield是两码事,Ruby的yield相当于SmallTalk的value,是对block求值的。Python的yield我记得是可以用来生成Generator的。coroutine我怎么记得是用Continuation实现的,这样的话Ruby应该也能实现,而且Ruby的Generator就是用Continuation实现的。
Ruby和Python里都有一些比较丑的东西,Ruby的Perl变量,Python的self和双下划线。另外我比较不能理解的是像abs这样只对数字有用的函数为什么要放到builtin模块
Python的模块好像做得比较好,还有Package初始化。
2 楼
qiezi
2006-09-25
cookoo 写道
4. python有list comprehension, ruby没有:(
用map和select先凑合着。
cookoo 写道
12. ruby有method_missing机制,python不知道有没有类似机制
我只知道有个__getattr__:
class A: def a(self): print "a" def __getattr__(self, method): def test(): print method return test A().a() A().b()
这2行调用将打印出a和b。不知道还有没有别的方法,method_missing功能应该算是有了。
cookoo 写道
20. python的三引号很漂亮,ruby的<<-XX...XX太难看了
也还是可以使用%q嘛,我觉得也还看得过去。
1 楼
buaawhl
2006-09-25
cool koo.
俺最关心的
module, package, import, static import, require,
这些呢?
发表评论
-
对Django的遗憾
2006-11-08 12:18 17137对django的错失良机我一直觉得很遗憾。我去年大概10月的时 ... -
Rails目前的一些局限
2006-11-08 12:17 2697robbin前面提到了一些局限,如遗留数据库是约定造成的,可以 ... -
Need for Speed
2006-11-06 07:38 6343Erb的渲染一直有人说慢,而c版本的eruby始终没有和Rai ... -
Ruby yield释疑
2006-11-01 03:10 4168context switch不足以表明coroutine,一般 ... -
Passing Parameters to before_filter
2006-10-30 07:23 2004I've just noticed that before_f ... -
ROR: the disruptive innovation
2006-09-29 22:13 1644I happen to read about a great ... -
Farewell, Java
2005-11-20 15:34 1891Evaluation: moving from Java t ... -
Try Ruby
2005-12-22 20:34 1745I'm systematically learning Rub ... -
10 Things Every Java Programmer Should Know About Ruby
2005-12-29 01:35 1669Happened to find this wonderful ... -
Heading fast on Rails~
2006-03-24 00:14 1520Not to mention the recent two S ... -
Ruby小窍门3则
2006-10-29 11:16 2655*怎么转16进制? class Integer de ... -
Ruby的根模块命名空间
2006-10-24 05:30 6834如果你要定制Rails的违例输出页面的话的,一般会用这样的代码 ... -
Rails Cache
2006-10-21 10:59 6495Rails提供三种页面cache方式: action ca ... -
加强版irb
2006-10-20 11:48 10321Ruby的irb和Unix shell一样,通过定制可以提供更 ... -
rake test:units在SQL和Ruby DSL两种schema模式下的差异
2006-10-10 01:16 2301sql方式,会复制development数据库中的外键。相反, ... -
有奖竞猜
2006-10-02 05:51 5044如下代码,第一位正确说出它的功能的我会给4星评价,第一个发现其 ... -
Ruby简化属性声明与初始化
2006-09-27 00:57 2730如果要一边声明一边初始化可以用这样的代码: class O ... -
Ruby惯用法
2006-09-19 20:41 23613Ruby有不少惯用法,这里略作一些介绍,也方便阅读他人代码: ... -
对Robbin《ruby on rails为什么暂时无法成为企业应用开发的主流?》的一些思考
2006-09-17 20:19 2351对Rails开发方式我也在思考,对动态类型和meta prog ... -
RJS经验点滴
2006-09-14 14:54 2474所见即所得方式的问卷设计器终于搞定了,一些细节体会: * 任何 ...
相关推荐
首先,Python以其简洁易读的语法和丰富的库支持而闻名,使其成为初学者和专业人士的理想选择。在游戏编程中,Python可以用于创建游戏逻辑、管理游戏状态、处理用户输入以及与其他系统集成。例如,Pygame是Python中一...
Ruby 和 Python 作为两种流行的高级编程语言,在设计思想和语法特性上既有相似之处,也有显著的差异。这两种语言都强调代码的可读性和简洁性,但它们在实现这些目标时采取了不同的策略。 首先,Ruby 的 `case` 语句...
sciTE特别强调对Ruby和Python的支持,这意味着它为这两种语言提供了丰富的语法高亮、代码自动完成和代码折叠等特性。这对于Ruby和Python开发者来说,能够提高编写和阅读代码的效率,减少错误并提升开发体验。 - **...
标题提到的"用Python, Lua 和 Ruby语言设计游戏",这三种动态语言各自拥有独特的优点,适用于不同的游戏开发场景。接下来,我们将深入探讨每种语言在游戏开发中的应用、特点以及它们如何协同工作。 **Lua** Lua 是...
而Ruby、Python等语言的语法差异较大,学习曲线较陡峭,不易于广泛应用。 2. **分心效应**:程序员需要投入大量精力学习多种语言,而大多数语言的语法和概念各异,分散了注意力,不利于深度掌握。 3. **市场稳定性...
标题中的“rubypython”指的是一个项目,它旨在实现Ruby和Python编程语言之间的互操作性。这个项目允许在同一个进程中调用Ruby代码和Python代码,实现了两种语言的桥梁。"即将更改回购地址"可能意味着项目的源代码...
这种差异部分源于Python更加简洁易懂的语法,以及其在学术界和科研领域的广泛应用。 #### 结论 总体而言,Ruby和Python各有所长。Ruby在Block特性和Mac平台集成方面展现出独特的优势;而Python则在性能优化和第三...
Python适合快速开发和原型验证,Lua则在大型游戏引擎中广泛应用,而Ruby则为喜欢其语法风格的开发者提供了另一种选择。在实际项目中,开发者通常会结合这些语言的特点,根据游戏的需求和团队的技术栈来选择最合适的...
- **Ruby与Python的比较**:对比Ruby和Python在语法、哲学和应用场景上的异同。 2. **Ruby编程环境** - **Ruby的安装**:介绍在不同操作系统上安装Ruby的步骤,如Windows和Linux。 - **运行Ruby**:如何启动Ruby...
在游戏开发领域,Python、Lua和Ruby这三种脚本语言因其简洁、高效和易学习的特点,逐渐成为开发者们的首选工具。《用Python,Lua和Ruby语言设计游戏-Game.Programming.with.Python.Lua.And.Ruby》这本书深入探讨了...
Python 和 Ruby 都是流行的高级编程语言,广泛应用于Web开发、数据分析、自动化脚本等多个领域。以下是对这两个语言的一些核心知识点的详细说明: **Python** 1. **基础语法**:Python 以其简洁易读的语法著称,如...
总之,`pygments.rb` 作为 `Pygments` 的 Ruby 包装器,为 Ruby 开发者提供了强大的语法高亮功能,提高了代码的可读性和项目的整体质量。通过使用这个库,开发者可以轻松地将代码高亮整合到他们的应用、博客或者文档...
Python和Ruby都是高级编程语言,它们在Web开发、脚本编写、数据分析等领域有着广泛的应用。这份资料《Python和Ruby比较优缺点共1页.pdf》可能是对这两种语言在特性、性能、社区支持、学习曲线等方面的对比分析。虽然...
在Ruby编程语言中,测试代码扮演着至关重要的角色,它确保了代码的质量和可靠性。"ruby测试代码1"可能指的是一个具体的测试用例或者测试框架的实例,用于验证Ruby程序的功能和性能。Ruby提供了多种测试工具,如...
在文件操作方面,三者都能满足基本需求,但Python和Ruby的语法通常被认为更易读,Python的os模块和Ruby的File类提供了高度封装的操作。PHP虽然可能需要更多的代码来实现相同功能,但在某些特定场景下,其文件处理...