Comparison of new web development frameworks of Matt raible
Download PPT address: http://raibledesigns.com/page/rd? Entry = comparing_web_frameworks_presentation1
In the PPT, matt first used a group of photos to show his house, car, his happy family, and his books, to show his success as an independent consultant.
Next, we will show his development history
Struts: used since June 2001-same time 1.0 was released.
Spring MVC: used since jenuary 2004-before 1.0 was released.
Webwork: used since July 2004.
Tapestry: used since July 2004.
JSF: used since July 2004-both sun's RI and MyFaces.
The following describes the comparison of each framework. The summary is as follows. Please read only the shortcomings, not the advantages. Because the advantage is endless.
Struts disadvantages:
Actionforms-they're a pain
Can't unit test-strutstestcase only does integration
Project has been rumored as "dead"
Display Tag:
Disadvantages of spring MVC:
Configuration intensive-lots of XML
Requires writing lots of code in JSPs
Almost too flexible-no common parent Controller
Webwork disadvantages:
Small community
Documentation is poorly organized
Disadvantages of tapestry:
Documentation very conceptual, rather
Pragmatic
Steep learning curve-very few examples
Long release cycles-major upgrades every year
JSF disadvantages:
Tag soup for JSPs
Doesn' t play well with rest or security
No single source for implementation
Sitemesh:
IDE support
Struts has a lot of IDE support and even has frameworks built on top of it (I. e. beehive's pageflow)
Spring has spring ide-only does XML validation, not a UI/web tool
Webwork has eclipsework
Tapestry has spindle-Great for coders
JSF has between, And They're getting better and better
Resource:
Download Sample Apps from this presentation
Http://equinox.dev.java.net/framework-comparison
Struts-http://struts.apache.org
Strutstestcase: http://strutstestcase.sf.net
Spring MVC-http://www.springframework.org
Spring ide: http://www.springide.org
Gaijin studio: http://gaijin-studio.sf.net
Webwork-http://opensymphony.org/webwork
Eclipse Plugin: http://sf.net/projects/eclipsework
Idea Plugin: http://wiki.opensymphony.com/display/WW/IDEA+Plugin
Tapestry-http://jakarta.apache.org/tapestry
Spindle: http://spindle.sourceforge.net
JSF-http://java.sun.com/j2ee/javaserverfaces and http://myfaces.apache.org
Java Studio Creator: http://sun.com/software/products/jscreator
Myeclipse: http://myeclipseide.com
Idea: http://www.jetbrains.com/idea
Sitemesh: http://opensymphony.com/sitemesh
Testing frameworks
JUnit: http://junit.org
Easymock: http://easymock.org
Jmock: http://jmock.org
Jwebunit: http://jwebunit.sourceforge.net
Canoo webtest: http://webtest.canoo.com
Tapestry test assist: http://howardlewisship.com/blog/
2004/05/tapestry-test-assist.html
XDoclet-http://xdoclet.sourceforge.net
Appfuse-http://appfuse.dev.java.net
Other options
- Ruby on Rails
- Openlaszlo
- Ajax
- Wicket
- Seam
- Clarity Trails