首页 > 开发 > 综合 > 正文

Swing是MVC设计的典范

2024-07-21 02:14:34
字体:
来源:转载
供稿:网友

  不管你的项目是否用到了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会以更快速度在桌面应用中普及。

菜鸟学堂:
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表