Wähner categorization and comparison of web frameworks


Wähner published a more neutral web framework comparison through defining types of web applications and assigning a web framework to them.

The web frameworks in the comparison are:

  • Grails
  • Lift
  • Struts
  • Spring
  • JSF
  • Tapestry
  • Wicket
  • Roma
  • ZK
  • Vaadin
  • GWT
  • JavaFX
  • Flex

In figure 1, types of applications are exposed.

Web application types
Figure 1. Web application types

CRUD client makes reference to a simple classical web application where the main actions are Create, Read, Update and Delete(CRUD). A portal makes reference to websites which contain more than one web application. RIA(Rich Internet Applications) refers to applications which need a plugin to satisfy their requirements, for example Adobe Flash. A Rich Client tries to create a better experience using HTML with AJAX.

Wähner web framework comparison
Figure 2. Wähner web framework comparison

Taking into account this typology, frameworks can be distributed according to figure 2 where complexity means difficulty to learn the framework for a Java developer.

It is important to notice that Grails learning is considered complex for a Java developer because he has to learn Groovy first, explains Wähner. Nevertheless, according to Villamor and Matt Raible, Grails is an agile framework which can be compared to Ruby on Rails.

On the other hand, Roma was in Villamor’s comparison too and it was the winner.

Thanks for reading. Comments, criticism and sharing will be appreciated.