不管你的项目是否用到了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会以更快速度在桌面应用中普及。
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器