Python、Lua和Ruby之优劣
Python、Lua和Ruby之优劣
Python
Python的优点:
1、Python比其它语言有更多扩展模块。
2、在网上可以找到很多Python教程。不仅如此,还有大量的英文书籍和资料。Python.org有很多为初学者准备的依主题组织的资料、教程和编程指南,此外还有很多链接和参考。
3、很多人都喜欢Python语言的语法,因为它清晰易读。
4、Python在支持库上大占优势,因为它有很多库,而且大部分都有完善的文档支持。
5、很多工具可以用于Python,但难以找到适用于Lua和Ruby的。
Python的不足:
1、现有的Python调试器诡异而且效率低下。在Macintosh(苹果计算机)和控制台下进行调试是一个梦魇。
2、Python难以与其它语言集成,它有太多的二进制DLL,而且Python带了巨大的标准发布包。
3、同样的,也有很多人不喜欢Python对空白符敏感的语法。
4、因为栈上的任何东西都是对象,所以Python有时候会慢得难以忍受。
Luain
Lua的优点:
1、Lua在这三种语言中是运行时速度最快而且占内在最少的
2、集成Lua只会增加极少的内存占用率。
3、Lua的C API有着完备着文档和很好的例子,可以容易地通过C集成在软件里。
Lua的不足:
1、尽管Lua的文档已经增进不少,但仍然有所不足。三种语言中,Lua可能是文档最少的(API方面是个例外),因为代码中极少注释,这也增加了学习的难度。另外,对Lua的本质也没有什么介绍。
2、 Lua内建的功能很少,并没有对创建大型的复杂应用程序提供足够支持。
3、 Lua应该使用更好的垃圾收集机制,Lua现在的GC仍然使用非常简单而且传统的“标记和清除”方式。
Rudy
Ruby的优点:
1、Ruby有极好的高级调试器。
2、Ruby是最彻底的面向对象语言,对于OOP狂热者和惯于使用OOP范式的程序员,他们将会发现Ruby是最适合他们的语言。
3、 Ruby的语法极为简单,没有让人出乎意料规则,特别适合OOP行家的习惯。
Ruby的不足:
1、英文文档极度缺乏。
2、与其它语言相比,在游戏方面所作的工作和实例都少得多。
Python、Lua和Ruby之优劣的更多相关文章
- Python、Lua和Ruby比较——脚本语言大P.K.
译者按:Python.lua和ruby在C/C++是日渐式微的情况下,在java/.net的围歼中努力抗争的三个当红小生.在Tom Gutschmidt的著作<Game Programmng w ...
- Python、Lua和Ruby——脚本大P.K.
转自Python.Lua和Ruby--脚本大P.K. Python versus Lua Versus Ruby Python.Lua和Ruby--脚本大P.K. Tom Gutschmidt 著 赖 ...
- Python、Lua和Ruby三大语言脚本哪家强?
这三种语言中的哪一种更合适你的项目?很大程度取决于你想达到什么样的目标.作为一书的结尾,在这一节里,我会描述一下它们各自的优点和不足. Python的优点和不足 Python的优点如下: 1. P ...
- Python经典资料汇总
[专题推荐]Python系列英文原版电子书 http://down.51cto.com/zt/104 python简明教程(CHM) http://down.51cto.com/data/49213 ...
- Python学习资料下载地址(转)
[转]Python学习资料和教程pdf 开发工具: Python语言集成开发环境 Wingware WingIDE Professional v3.2.12 Python语言集成开发环境 Wingwa ...
- 史上最全的Python电子书教程资源下载(转)
网上搜集的,点击即可下载,希望提供给有需要的人^_^ O'Reilly.Python.And.XML.pdf 2.02 MB OReilly - Programming Python 2nd. ...
- [转]Python学习资料和教程pdf
开发工具: Python语言集成开发环境 Wingware WingIDE Professional v3.2.12 Python语言集成开发环境 Wingware WingIDE Professio ...
- 【推荐分享】大量Python电子书籍教程pdf合集下载
网上搜集的,点击即可下载,希望提供给有需要的人^_^ O'Reilly.Python.And.XML.pdf 2.02 MB OReilly - Programming Python 2nd. ...
- 【分享】史上最全的Python电子书教程资源下载
网上搜集的,点击即可下载,希望提供给有需要的人^_^ O'Reilly.Python.And.XML.pdf 2.02 MB OReilly - Programming Python 2nd. ...
随机推荐
- 【数论】【筛法求素数】【欧拉函数】bzoj2818 Gcd
gcd(x,y)(1<=x,y<=n)为素数(暂且把(x,y)和(y,x)算一种) 的个数 <=> gcd(x/k,y/k)=1,k是x的质因数 的个数 <=> Σ ...
- c++基础类型之signed、unsigned的一个细节
数值型 c++中,对于 int.long.int64....等这些数值类型,如果是有符合的,则类型前加不加 signed 其效果都是一样的. 比如如下声明: int nA; // 与 signed i ...
- WPF附加属性的Set函数不调用的问题
今天写程序的时候用到了附加属性,我是用VS内置的propa的代码段来实现的,代码如下: class Attach { public static bool GetIsEnabled ...
- 【重装系统】老毛桃U盘工具V2013超级装机版-安装原版Win7/Win8
老毛桃U盘工具V2013超级装机版-程序下载和运行 老毛桃U盘工具V2013超级装机版-安装原版XP的方法 老毛桃U盘工具V2013超级装机版-安装原版Win7/Win8
- 数据库问题5-SYS.SYSPROCESSES使用和查找死锁
http://blog.sina.com.cn/s/blog_62c4727d0100jc5z.html (一)理論部份 sys.sysprocesses (Transact-SQL) http:// ...
- 【spring data jpa】jpa实现update操作 字段有值就更新,没值就用原来的
示例代码如下: /** *复杂JPA操作 使用@Query()自定义sql语句 根据业务id UId去更新整个实体 * 删除和更新操作,需要@Modifying和@Transactional注解的支持 ...
- ajax asynx:false
默认设置下,所有请求均为异步请求.如果需要发送同步请求,请将此选项设置为 false.注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行 (默认: true) 默认设置下,所有请求均为 ...
- nginx+lua+redis
git clone --branch master https://github.com/openresty/lua-resty-redis.git yum install openssl opens ...
- FL2440 ubifs文件系统烧录遇到的问题——内核分区的重要性
之前用的文件系统是initramfs的,这种文件系统是编译进内核里的,而开机之后内核是写在内存中的,所以每次掉电之后写进文件系统中的东西都会丢失.所以决定换成ubifs的文件系统.这种文件系统是跟内核 ...
- Kubernetes概念介绍和v1版本部署过程
简介: k8s一个开源的,跨主机管理容器应用集群的编排系统,为应用提供了基础的部署.维护和扩缩容机制. 编排:跨Docker主机同一管理容器集群. 目的 简化开发和运维容器集群的工作. 让开发和运维能 ...