我的工程架构变迁[2]

      Struts1 在一定程度上把程序员从servlet的繁琐中解脱,他也是较早实现了mvc2思想的架构,所以struts1 出来,就立刻风靡整个java web 业,正统的mvc思想实现,齐全的结构 【action,form,tag,validation,layout】凡是javaweb上能用到的,几乎都包括在内,这叫java程序员们抖一下子看到了曙光,struts1迅速在社区传递开来,那时设计模式初见端倪,至少没有现在这么普遍,mvc思想由来已久,sun的swing组件的实现就大量使用了mvc设计模式,可惜,swing流行有限,swing初期由于其性能和界面感官所限,并未被广大程序员们所熟知,其实如果你稍稍仔细研究一下swing各个组件的架构,api,你会默契的发现很多界面和数据分离的设计,比如Jtable,就有module,jtree能都有专门的数据结构来描述其数据,并未把组件的现实和数据描述逻辑混在一起,这使得扩展swing组件变得非常容易,比如,同样的数据显示在jtable中,如果该列,可以用实现了统一的接口 的组件来描述,一个字符串可以直接显示,也可以改用textfield显示,也可以用label显示,一串数字,你甚至可以用一个图片显示,这就看你队组建的扩展能力了,这种极大的分离数据和现实逻辑的思想再拿个时期非常流行,struts1就是顺应了这个潮流。

      当然,在现在看来,struts1,有着这样那样的不走之处,可是它出现的时机非常适时,这是struts1大肆流行的主要原因,其实论优雅,论解耦,它都不如后来出现的webwork,springmvc,等等,可是那时这些还没正式出现,导致现在有很多系统都是基于struts1 的。人总是难以满足,技术的进步也夜以继日,很快人们就发现其实还有很多mvc框架甚至比struts1更好,可是struts1已经走了很长时间,综上所述,struts1后来被认为有以下缺点:一, 紧密耦合servlet ,二,基于类的继承而非借口,更详细见这篇文章 [url]http://zhidao.baidu.com/question/90224806.html[/url] webwork从一开始其实一直被人追捧,只是生的太晚,没有赶上struts1 的时机,但是以其优秀的架构被很多人私自推荐,从流行的书籍来看,早期就有 moxie 和 夏昕 的书,moxie 我只看过ppt,介绍webwork,言简意赅,夏昕的书深入浅出,例子通俗易懂,从他们的言语之间可以感受出笔者对这个框架的喜爱,要是说struts1是在主流中的波浪,波澜壮阔的话,webwork就如一股暗流不断汹涌着,从没有停止他的发展,提到这个就不能不提www.opensymphony.com这个组织,这个组织出了很多优秀使用的技术框架,著名的有osworkflow,xwork,oscache,quaze等等几乎个个是精品,不得不佩服其实力,名气虽然比不上apache,可是其特色却不逊于apache.............

你可能感兴趣的:(设计模式,mvc,框架,swing,Webwork)