vendredi 12 juin 2009

Appfuse pour le développement rapide d'application JAVA

Appfuse aide au développement rapide des applications web java à l'aide de technologies open source.

A l'aide de maven vous pouvez simplement initiez un projet de par la commande mvn archetype:generate et selectionner :



  • appfuse-basic-jsf

  • appfuse-basic-spring

  • appfuse-basic-struts

  • appfuse-basic-tapestry

  • appfuse-core

  • appfuse-modular-jsf

  • appfuse-modular-spring

  • appfuse-modular-struts

  • appfuse-modular-tapestry


Les avantages :
Le développement est accéléré par une gestion des utilisateurs et des rôles déjà implémentée. Elle nécessite peu d'adaptation pour se conformer des cas d'utilisations réels d'une application de gestion.
Les controlleurs de base sont assez souples pour se conformer à toutes les navigations rencontrées dans les application de gestion.
Les DAO et manager Générique accélère notablement le cas basique d'édition d'un fomulaire.
L'adaptation graphique est peu couteuse.

Les inconvénients :
Les prototypes proposés par maven sont assez mauvais :
Le développement avec l'IDE eclipse est difficile à initialiser pour fonctionner avec WTP.
Le pom est pollué par tout un tas de fonctions qui ne sont pas nécessaires quand l'objectif est la rapidité. L'enrichissement progressif aurait été préférable.
Le mécanisme de properties est lourd et ne fonctionne bien qu'avec maven, voir lourdingue et freine la rapidité de développement.
Le prototype maven utilisant la dépendance de war est très peu lisible et n'apporte pas grand chose.

En réalité, le travail avec appfuse pour une petite application commence par les suppression des fonctions ne concernant pas directement la productivité : checkstyle, PMD, aspect etc.

La documentation est encore légère et manque d'exemples complets.

Conclusion :

Appfuse n'est pas encore un RAD, il n'est pas révolutionnaire non plus. Le vrai problème de appfuse est la manière dont il est exploité avec maven. Cependant, il peu constituer la première inspiration pour créer un framework maison. Les archétypes maven peuvent difficilement être considérés comme un framework RAD.

A mon sens, les archetypes fournis souffrent d'une conception trop théorique. Ces handicaps sont particulièrement gênants lorsqu'il s'agit d'être rapidement productif. Néamoins, après quelques adaptations, ces prototypes peuvent remplir leurs objectifs de rapidité.

Aucun commentaire: