10 frameworks de développement web pour Java

Un bon billet donnant 10 frameworks de développement Web pour Java. JE pense que c’est hautement utile, au moins pour la culture générale, tant le « développement web Java » prend une part grandissante dans les cahiers des charges dont j’entends parler autour de moi. Struts2, Tapestry, GWT : autant de frameworks dont la connaissance peut éviter de passer pour un idiot lors d’un recrutement, ou mieux, de montrer que vous vous intéresser à ce dans quoi vous souhaitez travailler plus tard. Pour le reste, je me permettrai de rajouter Hibernate, qui n’est pas un framework web, mais un framework ORM, servant à faire de la persistance des données, et qui est au moins aussi important que tous les autres.

Je résume donc les différents frameworks donnés par ce billet, en donnant ce que Wikipédia en dit (quelque fois avec la version anglophone, quand la version française manque à l’appel).

Struts 2

Apache Struts est un framework libre servant au développement d’applications web J2EE. Il utilise et étend l’API Servlet Java afin d’encourager les développeurs à adopter l’architecture Modèle-Vue-Contrôleur. Apache Struts a été créé par Craig McClanahan et donné à la fondation Apache en mai 2000. Struts a fait partie du projet Jakarta de mai 2000 jusqu’en mars 2004. [Wikipedia]

JSF

Java Server Faces (abrégé en JSF) est un framework Java, pour le développement d’applications Web.

A l’inverse des autres frameworks MVC traditionnels à base d’actions, JSF est basé sur la notion de composants, comparable à celle de Swing ou SWT, où l’état d’un composant est enregistré lors du rendu de la page, pour être ensuite restauré au retour de la requête.

JSF est agnostique à la technologie de présentation. Il utilise JSP par défaut, mais peut être utilisé avec d’autres technologies, comme par exemple Facelets ou XUL. [Wikipedia]

Spring MVC

Spring est un framework open source pour les applications 3-tiers, dont il facilite le développement et les tests. En 2004, Rod Johnson a écrit le livre Expert One-on-One J2EE Design and Development[1] qui explique les raisons de la création de Spring. [Wikipedia]

Wicket

Apache Wicket, commonly referred to as Wicket, is a lightweight component-based web application framework for the Java programming language conceptually similar to JavaServer Faces and Tapestry. It was originally written by Jonathan Locke in April of 2004. Version 1.0 was released in June 2005. It graduated into an Apache top-level project in June 2007.[1] [Wikipedia]

Stripes

Stripes est un framework de présentation pour construire des applications web en utilisant les technologies Java les plus récentes.

Les objectifs qui ont prévalu à la conception de ce nouveau framework sont :

  • Faciliter le développement des applications web en Java ;
  • Fournir des solutions simples et néanmoins puissantes aux problèmes ordinaires ;
  • Réduire le temps nécessaire à l’apprentissage de Stripes à moins de 30 minutes ;
  • Rendre vraiment facile l’extension de Stripes, sans requérir une configuration trop détaillée.

[Wikipedia]

Tapestry

Tapestry est un framework libre facilitant la construction d’applications web Java basées sur J2EE. Initialement créé par Howard Lewis Ship, le projet Tapestry a été intégré par la fondation Apache comme sous-projet Jakarta puis il a évolué pour devenir un projet Apache à part entière. [Wikipedia]

RIFE

RIFE is a full-stack open source Java web application framework with tools and APIs to implement most common web features. Each of its toolkits is usable by itself and together they offer integrated features that aim to boost productivity. RIFE ensures that every declaration and definition is handled in one place in the code. This could simplify the developer’s task by reducing code replication, enforcing consistency, and easing maintenance.

RIFE’s design blends together in a consistent component object model two approaches, request-based and component-based. Through a centralized site structure (web engine), an application can be split up into reusable binary modules that can be integrated into other projects. [Wikipedia]

Seams

Seam is a web application framework developed by JBoss, a division of Red Hat. The project was founded in September 2005 by project lead Gavin King (JBoss), who was also the key initiator of the Object-relational mapping framework Hibernate. Pete Muir has since taken over for Gavin as the Seam project lead.[Wikipedia]

GWT

Google Web Toolkit (GWT) est un ensemble d’outils logiciels développé par Google, permettant de créer et maintenir des applications web dynamiques mettant en oeuvre JavaScript, en utilisant le langage et les outils Java. C’est un logiciel libre distribué selon les termes de la licence Apache 2.0.

GWT met l’accent sur des solutions efficaces et réutilisables aux problèmes rencontrés habituellement par le développement AJAX : difficulté du débogage JavaScript, gestion des appels asynchrones, problèmes de compatibilité entre navigateurs, gestion de l’historique et des favoris, etc. [Wikipedia]

OpenXava

OpenXava is a web application framework for developing business applications in an effective way. It allows rapid and easy developing of CRUD modules and report generation, but also it’s flexible enough to develop complex real life business applications as accounting packages, customer relationship, invoicing, warehouse management, etc.

OpenXava allows to define applications just with POJOs, JPA and Java 5 annotations. [Wikipedia]

Une réflexion sur « 10 frameworks de développement web pour Java »

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.