Python 和 Ruby 的相同点:
都强调语法简单,都具有更一般的表达方式。
Python 是缩进,Ruby 是类 Basic 的表达。
都大量减少了符号。
都是动态数据类型。
都是有丰富的数据结构。
都具有 C 语言扩展能力,都具有可移植性,比 perl 的可移植性更好。也都可以作为嵌入语言。
都是面向对象的语言,都可以作为大项目的开发工具。
都有丰富的库支持。
也有最宽松的版权许可,除了一些工具属于GNU世界。
都有 lisp 特色的 eval 函数,也都能把函数作为参数。
也有图形界面的Ruby的专门编辑器。
都获得了广泛的 C 库的支持,如 Qt、Gtk、Tk、SDL、FOX 等,Ruby 计划实现 SWIG 接口。
都有完善的文档。
和 Python 相比 Ruby 的优点:
具有正则表达式和嵌入 Html 的功能。Python 也有正则表达式,但没有 Ruby 的应用方便和广泛。
Python 的嵌入 Html 项目才刚起步。
Ruby 还有 Apache 的 mod 模块。(Python DOES have now - cloud)
Ruby 本身也实现和很多 Unix 工具,如 Racc,Doctools。比 Python 更亲近 Linux。
比 Python 功能更完整的面向对象的语法。
Ruby 的整个库都是具有类继承的结构。
他的基本的数据类型和运算符都是可以重载的。
Ruby 主要的功能都是通过对象的方法调用来实现的,而不是函数。Python 也在向这方面发展,但没有Ruby做的彻底。
Ruby 的类是更规范的单继承,还有接口等概念的实现。
Python 可以实现在列表内的条件语句、循环语句,而 Ruby 用“块”的方式来实现这个功能,比 Python 的更灵活,更具有通用性。
Ruby 具有类似 Lisp 的彻底的函数方式的条件语句、循环语句等。语句的表达能力更强。
附带一些 Unix 工具,如 Racc 等。
和 Python 相比 Ruby 的不足:
最大的不足正是因为 Ruby 的强大所引起的。它没有 Python 的简单性好。比较复杂的面向对象语法、“块”语法的引入、正则表达式的引入、一些简写标记都增加了语言的复杂性。
Python 的缩进表达方式比 Ruby 的 Basic 的表达方式更让人悦目,Ruby 程序的满眼的 end 让人不舒服。当然,Ruby 认为 end 的方式比 Python 更先进。
Ruby 还没有 Python 的“自省”的能力,没有从程序文件中生成文档的能力。
Ruby 没有国际化的支持。国际化支持在 Ruby 的计划中。这是因为Ruby 的历史比 Python 要短造成的。
Ruby 没有类似 Jython 的东西。
Python 和 Ruby 的语言的选择:
从简单的就是好的来说,选 Python 是没错的。Python 适合寻找简单语言的人,这很可能造成 Python 更流行,因此也有更多的支持。但如果要追求更强大的语法功能,则 Ruby 是好的选择。因为 Ruby 和 Python 的哲学有很多相似的地方,先从 Python 入手,尽量用 Python,如果 Python 的能力不足了,可以在找 Ruby。
总结:
Ruby 和 Python 的比较,就像五笔和拼音输入法的比较。拼音作为入门的输入法和长久使用的输入法都没有问题。五笔适合更高要求的情况。如果追求性能的不妨学学 Ruby。对编程语言感兴趣,想了解各种编程概念的学 Ruby 也会很兴奋。
From http://www.zaoxue.com/article/tech-60628.htm 2005
分享到:
相关推荐
Eric is a full featured Python and Ruby editor and IDE, written in python. It is based on the cross platform Qt gui toolkit, integrating the highly flexible Scintilla editor control. It is designed to...
在提供的压缩包文件中,"Premier.Press.Game.Programming.with.Python.Lua.and.Ruby.ebook-LiB.chm"很可能是一本关于使用这三种语言进行游戏编程的电子书,它可能会详细介绍如何利用这些语言来开发游戏,涵盖从基础...
#### 标题解析:“Game Programming with Python Lua And Ruby” - **核心概念**:本标题指出了使用三种编程语言(Python、Lua 和 Ruby)进行游戏开发的主题。 - **适用范围**:适用于希望使用这三种语言之一或全部...
《用Python,Lua和Ruby语言设计游戏-Game.Programming.with.Python.Lua.And.Ruby》这本书深入探讨了如何利用这些语言的优势来构建游戏。 Python在游戏开发中的应用主要体现在其强大的库支持和清晰的语法结构上。例如...
Dynamic Language Runtime (DLR) in .NET is a framework for designing and interacting with dynamic languages such as Python and Ruby. For the first time, the DLR places such languages on an equal ...
C++、Java、Python、Ruby和MATLAB OOP实例比较 红黑树二分搜索法示例,用于比较C++、Java、Python、Ruby和MATLAB...RedBlack Tree Binary Search Example Used to Compare of C++, Java, Python, Ruby and MATLAB Code
本资源主要涵盖了使用Python、Lua和Ruby这三种编程语言进行游戏设计的知识。这三种语言各有特点,适用于不同的游戏开发场景,下面将详细探讨每种语言在游戏编程中的应用及其优势。 1. Python Python是一种高级、...
Syntax highlighting for HTML, PHP, Java, C/C++, CSS, ASP, Perl, JavaScript, VBScript, Python and Ruby on Rails. Also, it can be extended for other programming languages based on custom syntax files. ...
Syntax highlighting for HTML, PHP, Java, C/C++, CSS, ASP, Perl, JavaScript, VBScript, Python and Ruby on Rails. Also, it can be extended for other programming languages based on custom syntax files. ...
The addition of relevant new topics and examples such as reflection and exception handling in Python and Ruby add to the currency of the text. Through a critical analysis of design issues of various ...
根据提供的文档信息,我们可以总结出以下关于《使用Python、Lua和Ruby进行游戏编程(2003)》这本书的关键知识点: ### 一、书籍概述 《使用Python、Lua和Ruby进行游戏编程(2003)》是一本专门介绍如何使用Python...
"Game Programming with Python, Lua, and Ruby" 这本书很可能详细介绍了如何利用这些语言进行游戏开发,包括但不限于以下几个方面: 1. **基础概念**:介绍每种语言的基础语法和特性,帮助读者快速上手。 2. **...
Notable in his language toolset are C, C++, Java, Python, and Ruby. He has a huge interest in algorithms and finds them a good intellectual exercise. He is a technology strategist and software ...
Game.Programming.with.Python.Lua.and.Ruby
* Supports syntax highlighting for Python and Ruby on Rails by default. * Improved syntax highlighting speed on long lines. * 'Disable Save button with unmodified documents' option ('Preferences'->'...
This books also provides examples for C#, Python and Ruby users. What You Will Learn Understand how the locators work and use various locator methods to build reliable tests Build reliable and ...
在互联网上,关于初学者应该选择哪种编程语言的讨论非常热烈,常见的选择有PHP、Python和Ruby。以下是对这三种语言的深入分析以及它们在实际应用中的优劣比较。 首先,PHP是一种广泛使用的服务器端脚本语言,尤其在...