1
BOYPT 2013-09-11 10:18:35 +08:00
不差。按Python作者Guido的说法就是,只保留实用的部分。
但这样的对比并不公平,因为java是静态语言,对于类型处理都是需要预定义的,这点在C++/Java/Go等静态语言里面都有一样的体现,这一点形成的一系列静态语言特性,拿来和动态语言比较是不在一个层次上的。静态语言需要一个确定类型声明,所以才需要定义interface(C++的纯虚类),才会出现implement 的概念…… 而动态语言里本来都不需要预先确定对象的声明。 |
4
pyKun 2013-09-11 10:26:39 +08:00
“Java更加依赖各种语法/限定来保证软件质量,Python更加相信开发者的水平足以保证软件质量。”
这句话哪来的。。。 |
5
holmesabc 2013-09-11 10:40:50 +08:00
"Java更加依赖各种语法/限定来保证软件质量,Python更加相信开发者的水平足以保证软件质量"
这句略坑了哈。 抽象类与接口看做语法糖,这个理解不太好吧。 感觉coolshell里面说的,java的接口来填c++的坑,倒是有些道理的。 看google的C++风格指南,里面有点以java的概念来人为限制c++ |
6
caoyue 2013-09-11 10:57:01 +08:00
最后几句有点问题
实际上很多区别是出于静态语言和动态语言的特性,而不是简单的语法糖和人为限制 |
8
wwqgtxx 2013-09-11 20:37:41 +08:00 via Android
只是静态语言的限制而已,比如不像python可以随便覆盖系统类库,在java中是不可能的,还有很多特性也是。好处是限制的越死,错误率越低,执行效率越高。至于那个好用,自己看着办吧。总之不要想写py代码那么随便,有一个好的ide(比如eclipse)打开语法检查,自动提醒,对初学者可以极大地加快初学速度
|
9
wwqgtxx 2013-09-11 20:41:42 +08:00 via Android
而且我认为,只要程序逻辑没有问题,jdt会在在编译期间解决80%的bug,对开发大型项目有很大帮助。
还有就是类库的兼容性比py好的多,py24 py27 py33之间的类库经常不兼容,java的兼容性绝对是超级好 |