朋的博客

MySQL资料,Java技术,管理思想,博弈论,Ajax,XP极限编程,H.264,HEVC,HDR
随笔 - 86, 文章 - 59, 评论 - 1069, 引用 - 0
数据加载中……

James Gosling对SWT和其他事件的一些看法

 

SWT 是很多人都推崇的窗体界面开发组件,有很多喜欢 Eclipse 的人都说, SWT 的效率比 Java 自身所带的 AWT Swing 无论是开发效率还是运行速度上都快。确实如此, SWT Java 世界来说确实是 AWT Swing 的强大竞争对手。这里引用一段 Eclipse 开发者的话,“ SWT 本身仅仅是 Eclipse 组织为了开发 Eclipse IDE 环境所编写的一组底层图形界面 API 。或许是无心插柳,或是有意为之,至今为止, SWT 无论是在性能和外观上,都超越了 SUN 公司提供的 AWT SWING ”。

当然,这个观点是我并不是很同意,但鉴于自己前面一篇文章的“白痴”观点挨到不少高人的批评,呵呵,咱只是一个懂点 Oracle MySQL ,听说过 Java Ruby ,见过 Eclipse 的人(具体这些是什么东西还真的是不知道),还是不要乱提意见的好(玩笑而已)。自己不提,但 Java 世界的英雄 James Gosling 的意见总可以上台了吧?当然还是那句话,仅仅是我认为 James Gosling Java 世界的英雄而已(因为他缔造了 Java ,而且还一直为 Java 维护,抨击其他语言(嘿嘿,他的这个特点俺喜欢啊))。

James Gosling 的照片:

/*偶像吧,帅就一个字*/

这是他回答记者关于
SWT 的问题:

问:一个曾经徘徊在 Java .Net 技术平台之间的开发者因为 Java 语言的分裂提出过下面的问题:
Eclipse
SWT Standard Widget Toolkit )比 AWT Swing 都好(性能和开发效率)。 JBuilder GUI 却漂亮一点,但用的不是 SWT
Hibernate
JDO ?还是 Beans ?他想知道下一版本的 Java 怎么做到方便开发,让应用程序好看点,容易部署一点,同时又能提供更优秀的数据库使用技术,使开发人员能在最短的时间内开发出更快、更稳定、更漂亮的程序,让那些 .Net 的教徒们活在绝望中。

答:嗯,我肯定会推荐大家使用 Java 基础类库 JFC/Swing 的,因为只要使用得当,他们会比 SWT 的性能和速度更快。只是因为 Swing SWT 拥有更多的特性,所以很容易用错,这是个问题。
而关于数据库方面,每一种情况都有不同,你不得不去了解更多的情形。在某些情况下,关系数据库会是好的选择,但有些情况下,面向对象的数据库才是好的选择。这也是技术让人讨厌的一面。

James 大哥在 CSDN 上聊天室对 SWT 的说法:

问: SWT 将来是不是有可能加入到 JAVA SE 里面?

答:我们刚开始推出 JAVA 的时候,有一个 AWT 。刚才说到 SWT 它的架构基本上重复和照搬了 AWT 。而且它出现的问题基本上和 AWT 是完全一样。

最后说点自己的意见吧, SWT 的速度和效能确实不错,但是它并不符合 Java 的结构标准,不能做到“ Write Once, Run Anywhere ”。而且在内存和垃圾回收上并没有继承 Java Gc ,所以也是比较麻烦的。很多人说 AWT Swing 的速度和性能都慢,那是因为他们并不是真正的懂 Java 的人(其实大多数评价 SWT AWT/Swing 的人都是做 Java Web 开发的人员,对 Java 的桌面开发也许只是浅尝辄止,随便尝试了几下就给出了洋洋洒洒上万字的评语),想象一下 JBuilder Net Beans 是用什么做出来的?速度也不是一样很快,而且这些开发人员的开发速度绝对不慢,比起 SWT 开发,他们还不用去手动回收 dispose 的窗体呢(罪过啦,又说了些偏激的话)。我个人相信,随着 Java  6.0 的出现, Java 对桌面应用的支持得到了前所未有的提升,慢慢的就会有一套完善而成熟的 Java 桌面程序开发框架和开发模式,那时候也许大家就不用争论了。

 

posted on 2006-04-04 17:39 benchensz 阅读(3342) 评论(18)  编辑  收藏 所属分类: 随便写写-乱扯(基本不是有用的)

评论

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

唉,Java开发桌面……不理解
2006-04-04 21:08 | 白痴

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

dispose 又不是什么坏事。不能否认现在winform才是最好的GUI类库吧?不也一样用dispose。没有了C++的确定性回收,Java和C#中使用dispose模式来回收系统资源是个很好的选择。


不符合 Java 的结构标准?除了正式的标准外,还有事实上的标准呢。
2006-04-04 21:56 | dreamer

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

因为怕麻烦,所以没用过swt

欢迎访问http://www.shuangzixing.net 双子星Java开源技术门户
2006-04-05 00:00 | fanse

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

java在桌面软件上一直是超级的弱
很少有人会用这些控件去写东西
至少我是从来不用的
2006-04-05 15:53 | foo

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

java强不在j2se领域
2006-04-05 15:54 | foo

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

james gosling不过是java之父
j2ee跟他一点关系没有
他一点也不喜欢j2ee
所以可以说,java的大面积流行和他的关系并不很大
他不过在起步阶段作了一点工作而已
也仅此而已
java世界是众人的智慧,不要说什么英雄
我们又不是微软,把盖茨当教主
好了不说了,看书去
2006-04-05 16:01 | foo

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

我从来不用awt/swing
只在学校里用过
java好的东西那么多
这一个不过是可有可无的鸡肋罢了
比起j2ee&j2me
j2se实在是很弱很弱
2006-04-05 16:10 | 天地英雄

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

其实我觉得Java做桌面也并不是真的一无是处的,IDEA和Eclipse还有JBuilder这些不都是Java做的吗(不过,速度是真的不能跟ms的比了)?
这段时间在跟招商的人接触,他们在用Java写仓库RFID设备的驱动和接口,不错(离题了……)。
2006-04-05 20:57 | 陈朋奕

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

j2se弱?!
呵呵
2006-04-05 21:25 | allenjiang

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

不妨比较一下两组应用,都是有很多UI功夫的股票线图软件,一个是SWING上的,一个是SWT上,顺便看看Java写的桌面程序究竟如何:
1. www.sourceforge.net/projects/eclipsetrader (SWT)
2. www.sourceforge.net/projects/humaitrader (Swing)
2006-04-06 05:12 | rororo

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

评价J2SE 弱的人。。。肯定不懂JAVA 。。。。。如果自己不懂JAVA 。。就不要乱评价好不好。。
2006-04-06 13:23 | BEZY

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

java做桌面又能怎样?
IDEA等都是跨平台的IDE
当然需要这样做
否则还玩什么,难道用VC写啊?
M$的速度快?
不懂不要乱说
有些东西单机时候速度是快
越大就越慢
不为什么,因为速度快很多时候是牺牲了一部分严谨结构而得到的
这也是为什么cpp在分布式应用中被java取代的原因
写驱动的时候我使用c,和硬件打交道我一般首先考虑c
这点上c&java是互补关系
可以说没有c就没有java
虚拟机,操作系统等都是c写的
java是上层建筑
而且java压根不是客户端语言,我一直这么认为
至少在客户端,我觉得c++比java是一个更好的选择
桌面软件,我首先考虑的是c类语言,而服务器端,没说的,java上吧
不要指望一种语言能够一统天下,然后争来争去,单比某一块
比java强的太多了,但综合起来,java就是老大,因为它能够跨平台
2006-04-11 14:59 | foo

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

其实.Net已经做到了……
既是上层建筑又可以做客户端。微软还是比较牛的。
这些Java的人还活在自己虚拟的小世界里,不知道外面的世界早已经是微软的世界了。
2006-04-11 21:58 | 好人一个

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

其实.Net已经做到了……
既是上层建筑又可以做客户端。微软还是比较牛的。
这些Java的人还活在自己虚拟的小世界里,不知道外面的世界早已经是微软的世界了。
--------------------
你怎么这么愚昧呢?
外面的世界什么时候成了微软的世界
你给举个例子啊
交通,电信,金融,电子商务etc.
随便说,哪家大公司用服务跑的是.net/windows
世界五百强除了微软自己,谁用微软跑服务,随便说
你知道他们在用什么么?他们在用weblogic跑他们的服务
他们在用j2ee,明白么?为什么知道么?
因为如果跑.net,那谁是甲方?哪天你不爽微软了,你想换一家公司,可能么?
不可能,你只能悲哀无比地继续使用微软的垃圾,享受他们的白眼并美其名曰"服务"
//微软在中国提供过什么狗P服务
上层建筑从来就不是.net的事,.net在北美也只能争取中小企业的应用市场
微软才真正生活在自己的小圈子里
除了微软,谁TM支持.net?
给说个例子啊,HP,IBM还是Apple?
白痴才用.net呢,用.net等于把自己的生杀大权交给了盖茨,等哪一天盖茨想整你
你连怎么死的都不知道,还小圈子,不知道谁更小
如果你用了.net就会像当年vb还有com+用户一样
哪天微软玩腻了,又要升级了,抛弃了.net提出一个什么$org
那你就等着哭吧,等着把你所有的服务再更新换代一次,然后给微软捐出大笔的金钱
//别告诉我这不可能,已经发生过两次
爽啊?被强暴的快感是不是让你兴奋异常啊?
.net做到个P服务器端
连哪怕是一个大型分布式应用都没做出来过
也敢号称做到了
去问问金碟的人,问问盖茨当年多么希望能在金碟的项目上成功一次,因为那是世界第一
又是怎么失败的
2006-04-12 14:13 | foo

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

.net永远都只有一个公司支持
那就是微软
java跨平台
所以java后面有hp,ibm,sun,apple等等乱七八糟的公司企业还有组织
甚至可以说微软也支持java,只是当年微软在visual j++上搞得大家都不愉快
破坏了一种默契,最终被一脚踢出了java大家庭
从而沦落到今天这般田地,怪谁?嘿嘿
活该
2006-04-12 14:17 | foo

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

举例子

说银行,汇丰,四大国有银行等都是bea和ibm的老客户
他们买了一堆的ibm机器,现在决定转
因为怕用了太多的ibm机器和软件,将来会受制于ibm
所以改向bea

说电信,移动
这根本不用说,bea的天下,硬件多是sun的机器

保险
平安为例,也都TM的bea+sun,没什么好说的
平安的构架师有很牛的,斯坦福大学研究生,年薪上千万
人家搞什么的,java,靠,哪个傻B搞.net能年薪上千万老子就服

交通
航空为例,国航是bea的老客户,略过
南航现在从bea逐渐转向ibm+bea
希望两者能够共存,因为他们也怕被bea制约

零售
去问问沃尔玛买sas服务时候用的是什么
sas前面跑的是jboss,TMD也不是.net

电子商务
ebay,amazon都是weblogic应用的典范
没什么好说的,.net根本不可能参与进来
国内的淘宝,8848也是如此

物流
中远物流前一段刚刚和ibm合作,做成一个大单
集成了一堆的系统,用的TMD还是java

太J8多了,现在大家都在搞SOA,开始整合并集成系统了
.NET还在想着如何替代单机系统
什么年代了,这个市场大的早被蚕食了,人家已经开始集成了
谁还会去换已有的系统,傻子
2006-04-12 14:26 | foo

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

看招聘信息的非常有意思
招聘.net的大多是一些国内的公司
而且比较垃圾的那种软件公司
业务多是做外包啊什么的
招聘j2ee的大多是一些知名外企
什么GE,CITI
还有国内一堆能叫得出名字来的软件公司
什么金碟,什么用友
差距一目了然
2006-04-12 14:29 | foo

# re: James Gosling对SWT和其他事件的一些看法  回复  更多评论   

我喜欢建筑,不知搞建筑需要考些什么?
2006-12-31 10:08 | 考试

只有注册用户登录后才能发表评论。


网站导航: