Swing是MVC設計的典範

來源:互聯網
上載者:User
設計

  不管你的項目是否用到了Swing技術,我都要說,Swing是一個設計優秀的Java包,它充滿了大師的智慧。如果你學了Java卻連一個Button還不會寫,就象你學習Visual Basic卻不會用Button,那可絕對是不能被原諒的。Swing技術的應用已經在國外大行其道,由於java的免費、易學以及大家對於java技術的充分信賴,好多公司早早的就把應用程式的一切,從後台服務到前台人機互動介面,統統移到了java開發上。Swing出現了快10年了,憑藉其先進的設計思想,一直未曾落後於哪種語言的介面開發技術,使用和理解Swing的設計思想,對軟體開發人員大有裨益。

  Swing的設計是MVC的典範。雖然MVC的概念有點泛濫,可是真正能夠理解並熟練掌握、在設計和開發裡面自然流露的並不多見。記得用VC++開發程式時候,MFC嚮導也是產生Document和View兩個類,當時一直奇怪為什麼這麼繞圈子。再看Swing的設計,則到處充滿了MVC的痕迹。仔細研究Swing中事件監聽、Model-View分離、Renderer/Editor機制、可插拔的LookAndFeel等機制,簡直就是一門藝術,充滿了美感。而如果你非常痛恨這些設計並覺得他們怪異,很可能你是剛從VB或者Delphi轉過來,這些快速開發工具協助了你也“害”了你。

  Swing設計的不錯,不過可能過度學術化的設計也使得Swing跑起來並不靈巧,學習難度也大。這客觀上確實使得Swing一直沒有被廣泛使用,而且廣受詬病。記得以前“Swing有什麼成功的應用嗎?”之類的文章一直是熱門話題。IBM等則趁機抓住小辮子弄了SWT吸引了不少人,使得Java GUI技術面臨分裂的危險。

  不過隨著JAVA的不斷升級和最佳化,Swing的速度一直在提高,美觀性也在改善,基於Swing的成功應用也越來越多了。關於Swing是否消亡或被SWT代替或是否能作案頭應用的爭論逐漸少了。不過喜歡並精通Swing技術的開發人員,尤其在國內,依舊非常少。

  好在情況在轉好。Sun正意識到Eclipse和SWT所帶來的威脅,下了大力氣發展NetBeans,其最新版本對Swing GUI可視化設計的支援已經超過了所有對手,其Rich Client架構也走向成熟,這對Swing的發展和應用是一個很大的推動。隨著WEB熱潮的減退,人們又更多的開始理性的思考B/S和C/S架構的選擇,某些領域Swing技術已經成為首選的解決方案。隨著JGoodies、JIDE、TWaver等優秀Swing產品的不斷湧現,Swing會以更快速度在案頭應用中普及。



相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。