tapestry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From tapestry-...@jakarta.apache.org
Subject [Jakarta Tapestry Wiki] New: ChoosingTapestry
Date Wed, 16 Jun 2004 19:15:54 GMT
   Date: 2004-06-16T12:15:54
   Editor: RichardHensley <richard.hensley@mckesson.com>
   Wiki: Jakarta Tapestry Wiki
   Page: ChoosingTapestry
   URL: http://wiki.apache.org/jakarta-tapestry/ChoosingTapestry

   no comment

New Page:

= Introduction =
We recently had to make a web application framework choice. We reviewed several, including:
 * Cocoon
 * Tapestry
 * Maverick
 * Struts
After a lot of reading, we chose Cocoon. Aftering trying to use it, we went back to the drawing
board with a well formed process. We applied that process to Cocoon and Tapestry. The following
outlines our experience, but more importantly it outlines the process and evaluations that
we made.

== Process ==

1. Try to get it out of the box and running. 
Measure frustration, ease of installation, ease of getting the samples running
Cocoon passed
Tapestry passed

2. Try to get a reasonable development environment rolling
Cocoon had problems here, but I got it working
Tapestry, because of Spindle, passed with flying colors

3. Try to get a prototype application built and running
Gave up on Cocoon
Tapestry passed with flying colors

Evaluate the following:

1. How robust and helpful is the community
Cocoon passed with flying colors
Tapestry passed with flying colors

2. How robust is the available documentation
Cocoon passed with flying colors
Tapestry passed with flying colors

3. Judge the amount of non application plumbing that needs to be built
This is why I gave up on Cocoon, to much XML plumbing, to flexible, to many features
Tapestry is very lean in this regard, I build a lot of application and very little plumbing.

4. Judge the maintenance aspects
Cocoon has some very good documentation about separation of concerns and how that helps, but
in practice Cocoon simply does to much stuff and is easy to get off in the weeds for our staff.
Tapestry's strength interactive web applications. It also has excellent separation of concerns.
This combined with the component model allows for a very modular application with modules
that focus on a single task and can be integrated with ease. Needless to say, Tapestry passed
with flying colors.

5. Judge the license for use in a commercial application
Both are ASF and Apache License, nuff said

6. Judge the learning curve
Cocoon is big, very big
Tapestry has just enough to get our application built. The designer seems to have paid particular
attention to having a small learnable API. Very good in this respect.

7. Uses servlets
They do

As you can tell, Tapestry was chosen for all the reasons stated here. An interesting point
is that following were not high in priority during the evaluation.
- Has feature X, Y, Z
- Is an industry standard
- Has all sorts of features that might be nice in the future
- Application Performance

Fundamentally what was really important were the following:

- Can it be learned
- Can it be taught
- Can an application built using it be maintained 
- Does it have enough features to build the application we need

To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org

View raw message