不管你的項目是否用到了Swing技術(shù),我都要說,Swing是一個設(shè)計優(yōu)秀的Java包,它充滿了大師的智慧。如果你學了Java卻連一個
Button還不會寫,就象你學習Visual
Basic卻不會用Button,那可絕對是不能被原諒的。Swing技術(shù)的應(yīng)用已經(jīng)在國外大行其道,由于java的免費、易學以及大家對于java技術(shù)
的充分信賴,好多公司早早的就把應(yīng)用程序的一切,從后臺服務(wù)到前臺人機交互界面,統(tǒng)統(tǒng)移到了java開發(fā)上。Swing出現(xiàn)了快10年了,憑借其先進的設(shè)
計思想,一直未曾落后于哪種語言的界面開發(fā)技術(shù),使用和理解Swing的設(shè)計思想,對軟件開發(fā)者大有裨益。
Swing的設(shè)計是MVC的典范。雖然MVC的概念有點泛濫,可是真正能夠理解并熟練掌握、在設(shè)計和開發(fā)里面自然流露的并不多見。記得用VC
++開發(fā)程序時候,MFC向?qū)б彩巧蒁ocument和View兩個類,當時一直奇怪為什么這么繞圈子。再看Swing的設(shè)計,則到處充滿了MVC的痕
跡。仔細研究Swing中事件監(jiān)聽、Model-View分離、Renderer/Editor機制、可插拔的LookAndFeel等機制,簡直就是一
門藝術(shù),充滿了美感。而如果你非常痛恨這些設(shè)計并覺得他們怪異,很可能你是剛從VB或者Delphi轉(zhuǎn)過來,這些快速開發(fā)工具幫助了你也“害”了你。
Swing設(shè)計的不錯,不過可能過度學術(shù)化的設(shè)計也使得Swing跑起來并不靈巧,學習難度也大。這客觀上確實使得Swing一直沒有被廣泛
使用,而且廣受詬病。記得以前“Swing有什么成功的應(yīng)用嗎?”之類的帖子一直是熱門話題。IBM等則趁機抓住小辮子弄了SWT吸引了不少人,使得
Java GUI技術(shù)面臨分裂的危險。
不過隨著JAVA的不斷升級和優(yōu)化,Swing的速度一直在提高,美觀性也在改善,基于Swing的成功應(yīng)用也越來越多了。關(guān)于Swing是否消亡或被SWT代替或是否能作桌面應(yīng)用的爭論逐漸少了。不過喜歡并精通Swing技術(shù)的開發(fā)者,尤其在國內(nèi),依舊非常少。
好在情況在轉(zhuǎn)好。Sun正意識到Eclipse和SWT所帶來的威脅,下了大力氣發(fā)展NetBeans,其最新版本對Swing
GUI可視化設(shè)計的支持已經(jīng)超過了所有對手,其Rich
Client框架也走向成熟,這對Swing的發(fā)展和應(yīng)用是一個很大的推動。隨著WEB熱潮的減退,人們又更多的開始理性的思考B/S和C/S架構(gòu)的選
擇,某些領(lǐng)域Swing技術(shù)已經(jīng)成為首選的解決方案。
隨著JGoodies、JIDE、TWaver等優(yōu)秀Swing產(chǎn)品的不斷涌現(xiàn),Swing會以更快速度在桌面應(yīng)用中普及。
轉(zhuǎn)載之
http://blog.csdn.net/solo/archive/2006/05/12/725635.aspx