大家踊跃发表看法啊!
解决方案 »
- 用java实现pdf文件内容读取及解析时如何解压缩stream到endstream之间的压缩数据
- count+=count++;一个巨菜问题希望大家帮我解决下下?
- 请教全角波浪线的问题
- 问一个关于properties文件的路径的问题
- JFrame窗口,点击“还原按钮”时,为何缩小到只有标题栏
- 求:用JAVA转发数据报例子!
- 急求帮助!!四道难度不大的程序题!谢谢!!!
- integer转化成string,哪种方法权威?
- class a里要引用class b里的方法,该方法为public,除了建类class b 的instance来引用该方法外还有什么办法引用???
- 关于gc回收的一点问题
- 孙新的视频教材有配套教材吗~
- 求助??
当初swing设计思想是卓越的,Swing有着无与伦比的扩展性和灵活性,它采用了很多现代的UI理论,如renderer/editor等。只是碍于实现性能。
但随着swing实现的性能越来越高,硬件环境越来越好。swing的发展一定更好!
要说sun对于swing的失败,不是swing设计思想和架构有问题。而是他们为swing实现的默认look & feel是糟糕的!这句话我要说几遍!
还有Delphi,VB,PB等这一类
————————————————————————————
上面这些
在OO抽象的水准和优雅性,灵活性,重用性有几个能取胜swing。
swing是可以跨n种平台,因为他做什么都靠自己不依赖os,对于n很大的时候当然优势很明显。可是实际生活中呢? n又是多少呢? 10年之后n会增加多少呢?为了跨windows linux soloris 等有限的几种平台而损失了那么多性能还带来许多其它问题...我并不认为他比SWT更成功,但是我看swing的源码要比看swt的多得多 呵呵。因为它很优雅。
结论:swing是最优雅的GUI 但是不是最适合工业界的。
应该是VCL吧!
只能说明你不会用. VCL完全是oo的,(你也可以不oo)就象java中为了方便调用也会出现一些不能算oo的oo
oo是那一年的事情了,出了汇编,c 现在的计算机语言大多都是支持oo的.贬低那些GUI库,过去其他板块一定被骂得狗血淋头.swing在GUI库中一般一般了,很中庸,也没什么可比的. 这样是sun公司最头痛的一个库.
听说在jdk7.0中会改为本地化,这是我比较期待的.
只能说明你不会用. VCL完全是oo的,(你也可以不oo)
————————————————————————————————
那我也只能说你不懂swing.
我只能同意你VCL更快!
---------------------------------------------------
不会了,他完全可以写个类来判断是那种操作系统,然后再调用本地化的来处理,这样不就可以了吗?
照样可以跨平台
CAYU(中原) ( ) 信誉:96 Blog 说的不错
我也期待出来本地化的,这样我估计java在桌面程序上可能会占更大的份额,要不然很难扩大应用范围
用过swt的都知道本地化后的优势
swing的界面看上去确实可以..
----------------------------
恩,也许我不是不知道JAVA的GUI做的咋样, 不过我们现在做的ERP的GRID控件是cxGrid的,不用写一行代码就能自动排序,自动查找,关键是漂亮(office2003风格的)
JAVA里有这咚咚??我拉一个cxGrid控件下来,JAVA的给你做3年的
你要office2003风格的,我这边给你一个 http://officelnfs.sourceforge.net/,这是一个人为swing做的office和VS的look & feel.
而且这些扩展并不是像你认为以一个个独立控件的方式展开,而是全面和一致的!因为swing对于GUI元素的设计本来就不是原子的!我欣赏优雅和一致的设计,一致性反应了设计者极高的抽象水平,优秀的概念表达.
我们来看一下swing和MFC
MFC是如何表达GUI的,首先对于GUI元素没有一个共性抽象,使得无法进行任意的递归组合.
MFC认为 GUI元素是原子的,GUI元素自身提供了设置它属性的API基本决定了这个GUI元素给外部定制它的能力.低灵活性!
MFC认为GUI元素自身应该处理事件,并且使用消息映射来实现这一点.
所以通常如果你要处理某个GUI元素的事件,你需要写一个继承这个GUI元素的类.
但殊不知很多情况下事件处理者和GUI元素是分离的!MFC的MVC是实现是不一致的,他并没有将这一理念贯穿于整个框架.而只是单独搞了个doc/view.
所以如果我以今天的思路来看MFC,我觉得它对GUI的抽象是糟糕的,差劲概念表达. 认为GUI元素是原子的
——————————————————————
这一条是很多win下GUI框架的通病,这一条也使很多人养成了这样一个习惯,就是将数据通过GUI提供的API填充到GUI组件的主动思路. swing的优秀设计在于它鼓励你设计自己的模型,改变你老是想把数据主动填装到GUI组件的思路,而是反过来GUI组件监听模型的变化.
直到windows forms才开始设计比较完整和一致的数据邦定架构,到现在快要到来的WPF将邦定的概念进一步发挥,才摆脱了DELPHI,VB,PB,,GUI框架缺乏一致完整的概念而是以几麻袋几麻袋控件维持的时代。swing的美在于优雅,灵活,一致,概念的完整性!
JTable 就有TableModel ---->JTable<-----TableUI,从结构来说JTable完全扮演着控制器的角色.从API的使用者角度来说它是一个MVC体系的外观,让人想起了设计模式中的外观模式.
因为swing中一个GUI元素就是一个MVC体系,而不原子的.
除此之外还可以为组件自定义renderer/editor.
你这人也太狂了,不是我说你,你不仅仅是井底之蛙,而且狂妄无比的青蛙!
收笔,不再和你辩论一句了,你任何不明白的,自己好好学习明白,不要对自己不懂的一行指手画脚,还是好好自己回去抱着你的Delphi做你天下无双的清秋大梦吧。
WPF刚刚才来,虽然里面也有很多不错的设计!但是swing在97年左右就敢于做这样模块化程度的设计我真的很佩服。
10年后,windows世界才出现以OO为中心的全面和一致的API(WPF,WCF,WF...)!而之前windows世界是非常混乱的API生态(win32,MFC,VB,PB,DELPHI............)
------------------
既然JAVA这么猛 那干嘛ERP从来米见过JAVA写的?(桌面程序)
这就证明JAVA做不了桌面程序,要是做不了桌面程序,那SWING,SWT拿来做什么?
首先,Java和Swing出现的时间晚,等其出现和完善时,桌面程序、比如办公软件、游戏、等等都基本上已经开发并很成熟了,使用的语言大部分不是C/C++就是VB或者Delphi,等Java和Swing出现并逐步完善了,桌面应用已经有逐渐被Web应用取代的趋势,桌面应用市场也基本饱和,各大传统桌面应用软件已经成熟,这些桌面应用的公司当然不愿意冒风险使用Java重写这些软件,而且也没有必要使用Java重写。
其次,你所说的ERP没有见过用Java写的,那你简直太孤陋寡闻了,无论国内国外Java,Swing编写的ERP其实稳据市场第一位,2005年Evans Data统计的结果是Swing市场占有率第一,为47%,超过WinForm成为主宰用户界面开发工具,如果你不信的话自己去看看这个报道:
http://weblogs.java.net/blog/hansmuller/archive/2005/10/official_swing.html
我自己就在国内工作过很多家ERP公司,哪个公司不使用Java Swing开发ERP呢?起码用友、金蝶是这样,我不知道你工作的公司是不是用Java,但是起码国内有一半以上的市场在使用Java,其中一部分包括Swing的前端。
最后,企业应用产品基本属于公司内部网使用的产品,而Java又是主要应用于这个领域(由于前面所说的桌面应用市场已经基本饱和),所以给我们的印象是怎么看不到几个通用的Java Swing应用软件,不是很少,其实他们都在企业应用的产品中,企业应用的产品具有私有性,普通用户当然感觉不到。
而Delphi正好相反,Delphi本身出现的又早,出现的时机又恰当,正是桌面应用崛起的时候,当然Delphi本身也很优秀,所以用Delphi开发的桌面应用到处都是,所以给人感觉是Delphi比Java更适合桌面开发。
随着Java6的发版,Java Swing在桌面开发方面的能力、潜力已经超越其他任何工具。如果你只停留在过去,不对现状进行调查,怎么会知道这个世界正在发生着翻天覆地的变化呢。
因此不是Java做不了桌面应用,Java做桌面的能力一点都不比Delphi差,而是时机、市场、公司策略、市场宣传、还有一些固步自封的人。
好了,如果再有问题,自己弄明白,或者干脆关起门来继续自己梦。
Java IDE我都用NetBeans,NetBeans 5.5在界面设计上很强,起码能比得上Delphi和VB吧。
印象中eclipse的用户界面设计工具一般都比较差。
---------------
比较差 那就是说有咯 我怎么没找到?
VC的是NEW新建一个dialog 然后就可以在上面画界面了 DELPHI更简单了 MYECLIPSE呢?在哪里啊 怎么隐藏得这么深啊
http://bbs.netjava.org/index.php?topic=45.0
能不能DOCK啊 能不能自由缩放? 能不能跟数据感知?
Napkin Look & Feel
http://napkinlaf.sourceforge.net/也是别有一番风味阿!推荐玩一下!还有再次强调一下,
swing的优秀在于它的架构和思想!如果你不从这些角度审视一下swing的话,你当然很难发现它的美!因为swing的设计充满了OO的艺术!在"Swing是MVC设计的典范"一文中有这样一段话:
仔细研究Swing中事件监听、Model-View分离、Renderer/Editor机制、可插拔的LookAndFeel等机制,简直就是一门艺术,充满了美感。而如果你非常痛恨这些设计并觉得他们怪异,很可能你是刚从VB或者Delphi转过来,这些快速开发工具帮助了你也“害”了你。 一语道破天机!说得好啊 !想以前看MVC,面向对象,设计模式,然而当用VB,powerbuilder等写
GUI程序时难以表达MVC,因为它们的架构完全不鼓励模型视图的分离。
像MFC对于GUI的抽象也是很糟糕,直到我看到swing的时候,才算真的看到了一个面向对象的GUI框架。swing的很多优雅设计真的让我眼前一亮。很多以前书上看到的理论,都在这里找到了影子。 如果你熟悉MVC,面向对象理论,GOF设计模式,那么对于swing你会感觉到很亲切。
对于你我想我不可能说服你什么了!你看看这些吧!
http://www.jidesoft.com/ VLDocking:
http://www.vlsolutions.com/en/products/docking/在"Swing是MVC设计的典范"一文中有这样一段话:
仔细研究Swing中事件监听、Model-View分离、Renderer/Editor机制、可插拔的LookAndFeel等机制,简直就是一门艺术,充满了美感。而如果你非常痛恨这些设计并觉得他们怪异,很可能你是刚从VB或者Delphi转过来,这些快速开发工具帮助了你也“害”了你。 这段话送给你吧!
不仅仅是无知者无畏,现在变成了无知者无耻了。
给你说过多少遍了,自己在弄清出之前不要开口大放厥词。给你说这种DOCK、缩放的、数据感知的小儿科不知在Java已经出现多少年了!
实际上由于Swing的这种优秀结构,你根本不用等别人为你做这些东西,自己都能写一个,我自己也写过一个DockingFrame,根本不用花费多少力气,请问你除了依赖Delphi为你提供,你能自己使用Delphi写一套吗?更何况这种Java组件类库铺天盖地都是,跟本不用你去做。
大家都不要理这个人,不可理喻。
求求你回去做你的清秋大梦吧,不要在学Java了,这样你自己舒服,关键是别人也清净了。
只帮同学按VC的代码风格做过一个扫雷 累死我了 界面都自己画 NND 当时想:妈的,什么破东西,比用VC写还慢(写界面的代码占了80%) 现在小弟要找找看SWING跟AWT到底还有什么优势 光幽雅有P用 就象精灵族的弓箭手 3个丑八怪牛头就能灭一队了
关键是开发效率 跟维护的时候好修改
我觉得你没有必要找了,既然不打算学习他,何必呢,更何况Delphi你那么钟爱,VC你那么熟练,何苦呢?
Swing的开发效率/维护效率是没有打算进入Java阵营,只是肤浅的应付别人事情的人无法理解的,真的,别气自己和别人了。其实做Swing的工具中比Delphi一样优秀的有的是,只是你不用,你也不会,自己非要手工写代码,埋怨得谁啊。
你完全可以继续用delphi,用什么只要是由你的需求决定的,但你不要由此就说swing不好
我问你你知道多少,你就会用几个ide就跑来乱发评论,越看越发现你的无知
就拖动几下VS的界面设计工具,你是不可能看到MFC设计上的垃圾
swing给我印象最深的是他的高灵活性,只有想不到,没有做不到最后劝你不要这么浮躁,如果你真想讨论你就先把swing学好,只要你能学,就会发现他设计的妙处.如果你觉得他哪里设计的不合理,你可以向JCP去提.但我知道你不会的,你好好守住你的delphi,vc的地盘吧
delphi,vb,pb...所谓可视化开发环境只是一朵美丽的罂粟花!
______________________________________________________________戒毒把!!!
6可是java要重新带给大家的
http://www.evermoresw.com/webch/index.jsp
这儿有一些截图:
http://www.evermoresw.com/webch/product/picture1.jsp
http://www.evermoresw.com/webch/product/picture2.jsp
http://www.evermoresw.com/webch/product/picture3.jsp
.......
http://www.evermoresw.com/webch/product/picture16.jsp
就是用Swing做的,你可以想象Swing的威力/潜力之大了。
也太佩服这些永中的工程师们了!
不多说了,事实胜于雄辩,Office办公软件可以说是桌面应用软件的极致了。
速度也不错 请上面所有的xd原谅 小弟冒昧问下:要是JAVA做ERP不至于太慢 俺们这明年有打算招几个厉害点的JAVA程序员 做ERP的, 是一个集团,业务超复杂 而且整天修改业务规则 JAVA好做吗 开发效率行吗 维护效率能顶的上不?
(希望答案的肯定的)
----------------------------------------------
抱歉,我的语气可能过激了点.
我不是反对技术讨论.只是象"swing是不是你目前所见在工业界最优雅和最灵活的GUI框架呢? "这种问题这儿有几个人能给出一个让人信服的答案呢?
能回答这个问题的至少也得精通几种不同得GUI框架吧?
谈的上熟悉几个GUI框架得人估计不少,但能真正了解其精髓的有几何?
看到上面有些人根本不了解Swing(我怀疑其根本就没用过Java)就大发阙词,我觉得很不爽.与其这样,还不如静下心,好好把自己该学的学好.
至于那种技术好,市场的优胜劣汰会给出结果.ps:我也是一JAVA菜鸟,至少我自己觉得JAVA是个很优雅的语言,Swing也是一个很不错的GUI框架.管它是不是最好的,自己觉得用的爽就OK.
以上是个人看法,勿以为意.
不懂设计模式,怎能欣赏Swing?怎么学得会java?
这种小屁孩,干不了程序员的!
特别是rehte的发言很精彩,反驳中带有启发和说理,真精彩,给想学SWING,但又不是很懂的人一个强烈的信心.
http://blog.sina.com.cn/u/1264601020
我们开发的产品是网络管理系统,我也是swing的忠实支持者,
用swing编程可以将oo的思想体现的淋漓尽致,感觉自己有点艺术家
的感觉。支持swing!!!!!
兄弟最近在学swing,虽然现在还感觉不到大家说的优点,但是正在努力学习中,我相信swing的好处是个仁者见仁,智者见智的事情,只要坚持自己的信念就好。
我只希望多一些关于swing技术的讨论,而不是去争论到底它好在哪?
不管黑猫,白猫,能抓到老鼠就是好猫!!!
我看到的时候才知道原来AWT可以做成这样的.
也就是说WPF是通过图形硬件显卡进行渲染的。对Java方面的东西不熟悉,我感觉Swing是软件渲染的,不知道对不对?----------------
硬件渲染的时候,矢量图形的反锯齿效果依赖于硬件
软件渲染的时候,矢量图形的反锯齿效果依赖于软件
to:wqrz(滑步向左)
吃惯现成的,当要自己写一个世上没有的控件的时候,就会是斗大的馒头无处下口了。
其实用了JAVA也将近一年了。最讨厌还是JAVA没有提供内存释放的函数,没有自己的析构函数。搞的每次都要自己去搞个dispose函数。
————————————————————
swing的设计灵活和优雅确实不是吹出来的!
我最早学Java GUI的是Swing,两年前(大二)。说实话,当时Java学得很肤浅,对于MVC,对于布局方式,对于可插拔的UI,对于线程,根本没有什么概念;加之早先受过VB毒害,Swing编程对我而言,无疑是恶梦。学习一直在进步着,对于Java有着特殊嗜好,闲暇之余完成了自己的数据结构类库(没事玩的),用JNI+ANSI C写了一套控制本地硬件底层的类库(对这个我一直比较满意,在后来参与的项目里也派上用场)。看了看JSP,学了学Struts,搞了好长时间EJB。唯独对于Swing,一直逼开着,因为讨厌。第一印象太重要了!接触了Eclipse,接触了SWT。用SWT结合EJB给外边做过一个C/S 系统。一开始对于SWT这种本地风格的Java GUI充满着惊喜。相对于以前我所认识的Swing,SWT灵敏的界面,无章编码(符合当时我的垃圾代码风格)。前段时间因为项目原因,重新开始学习Swing,借了本厚厚的Java Swing,从头学起。MVC,多线程,UI风格设计,第三方的Look and Feel,让我对Swing有了一个全新的认识。
Swing可以跑得很Smart--尽量把logic功能写入其他线程,Swing代码可以很优美--如果你有深刻得MVC概念,Swing界面你想做成啥样就做成啥洋--如果你自己设计UI,Swing可以非常漂亮,半透明,磨砂玻璃...完全可以和操作系统界面不相关,第三方的look and Feel应有尽有。
Swing编程可以很容易--扎实的Java基础+对Swing的熟悉+好用的Eclipse插件
总之,Swing是艺术品。细嚼之后,方可品真味!
SWT的感觉就是太晦涩, 很多东西不太明白. 比如合并单元格, 我在Swing中可以自己写, 在SWT中只能干瞪眼, 哈哈, 据说有个KTable什么的, 还没有用过.
用了SWT以后感觉就是这个东西的确很快, 说实话, 的确比Swing快, 本地相关的么, 少了一层, 快是自然的, 不过1.6的Swing加快了速度, 感觉还行.
但是重写很麻烦, 估计是由于刚刚接触这个东西, 不过就设计的优雅性而言, 我个人认为和Swing不相上下, 只不过里面有太多东西没有很多资料可以查, 不知道怎么弄而已, 如果加以时日, 也许就和Swing一样了.BTW, Swing的MVC理念是从SWT里面来的.... 汗一把, 只不过当时SWT还不叫SWT, 也没有公开发布.
据个例子, JTable在1.6以前不能排序, 1.6开始可以, 说明Sun意识到这个功能是大众需要的.
但是在没有办法排序的时候相信熟悉Swing的兄弟们写个排序应该不会很难, 这就是Swing最大的好处, 只要你懂, 就可以自由发挥. 并且这个"懂"的门槛不是太高, 当然也不是太低. 但是至少要比其他语言低.
________________________________
狂到。,不过就设计的优雅性而言, 我个人认为和Swing不相上下,
——————————————————————————————
swt有没有和swing renderer/editor一样的等价机制。
————————————————————————————————————————————
你倒是详细说说啊。这到底谁先谁后啊,swing什么时候开发的。
不要扭曲历史啊.