IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)

Critique du livre Apache Maven

Date de publication : 17/12/2009

Par Romain Linsolas
 

Voici une critique du livre Apache Maven �crit par Nicolas de Loof et Arnaud H�ritier.

29 commentaires Donner une note à l´article (4.5)

������������ � Version PDF (Miroir) Version hors-ligne (Miroir)

I. Un mot sur les auteurs
I-A. Nicolas de Loof
I-B. Arnaud H�ritier
II. Le livre
II-A. Informations
II-B. Composition
II-C. Disponibilit�
III. Contenu et critique
III-A. Public vis�
III-B. Encore un livre sur Maven ?
III-C. Composition
III-C-1. Premiers pas avec Maven
III-C-2. Maven en entreprise
III-C-3. Encore plus loin avec Maven
III-D. Mon avis
IV. R�f�rences
IV-A. Liens
IV-B. Remerciements


I. Un mot sur les auteurs


I-A. Nicolas de Loof

Nicolas de Loof est "techno-veilleur" et architecte Java pour une grande SSII fran�aise. Avec 12 ans de d�veloppement dans ses bagages, il a rejoint l'�quipe de d�veloppement de Maven en 2007, en particulier pour le support de GWT. Il cr�e le BreizhJug (le groupe des utilisateurs de Java, situ� � Rennes) en 2008, et participe activement au microcosme Java francophone.

I-B. Arnaud H�ritier

Arnaud H�ritier est responsable des pratiques et outils de d�veloppement chez eXo Platform. Depuis 10 ans, il participe aux d�veloppements d'applications en Java que ce soit en tant que programmeur ou architecte. Il contribue � diff�rents projets open source et en particulier � Maven dont il a rejoint l'�quipe de d�veloppement en 2004, et dont il a int�gr� le comit� de direction en 2005.

II. Le livre


II-A. Informations

Titre Apache Maven
Auteurs Nicolas de Loof et Arnaud H�ritier
Pr�face Jason Van Zyl
Langue Fran�ais
Public vis� Tous niveaux
�diteur Pearson

Le livre Apache Maven existe dans deux formats : sous forme de livre et en version �lectronique (format Acrobat PDF) :

Version livre Version PDF
ISBN-10 2-7440-2337-X 2-7440-4098-3
ISBN-13 978-2-7440-2337-8 978-2-7440-4098-6
R�f�rence 2337 4098
Nombre de pages 324 318
Format 18,7 x 23 cm
Prix recommand� 1 32 € 27,20 €
Onix 2 XML XML
1 Prix recommand� sur le site de Pearson.
2 L'ONIX est un format XML standard d�crivant un livre.


II-B. Composition

Ce livre est compos� de 18 chapitres r�partis en trois grandes parties :

  • Premiers pas avec Maven
    • Introduction
    • Au-del� de java.lang
    • Un peu plus que compiler
    • Mettre en place des tests unitaires
    • Mettre en place des tests d'int�gration
  • Maven en entreprise
    • Gestion avanc�e des d�pendances
    • Quand le projet devient trop lourd
    • Maven et JEE
    • Maven et les IDE
    • Le jour J : la livraison
  • Encore plus loin avec Maven
    • Utiliser un outil non support�
    • L'assurance qualit�
    • Respecter un format de distribution
    • Un nouveau projet d�marre
    • Avons-nous fait le bon choix ?
    • Nos recommandations
    • �pilogue
    • Lexique
Sur le site de Pearson, vous avez la possibilit� de lire quelques extraits de ce livre :


II-C. Disponibilit�

Le livre est disponible � l'achat sur le site de Pearson sous deux formats : livre papier et livre �lectronique (format PDF).

Vous pouvez �galement le commander sur le site d'Amazon, de la Fnac, ou de tout autre site de vente de livres.


III. Contenu et critique


III-A. Public vis�

Ce livre s'adresse � un large public, bien qu'il privil�giera plut�t les novices en la mati�re, ou ceux qui souhaitent avoir une vue d'ensemble de Maven dans une organisation. Parce qu'il consacre �galement une bonne partie de son contenu � tout ce qui tourne autour de Maven (tests unitaires, suivi de qualit�, d�ploiements, livraisons, etc.), il pourra s'adresser � des personnes connaissant d�j� l'outil, ou � ceux qui n'ont pas forc�ment un niveau technique tr�s pouss� (managers, chef de projets, etc.). Les experts de Maven ne sortiront cependant pas de cette lecture avec beaucoup de nouvelles connaissances.


III-B. Encore un livre sur Maven ?

Ce livre traite donc essentiellement de la version 2 de Maven, qui est un outil mature et qui date de 2005. Il existe d�j� quelques ouvrages traitant de ce sujet, en particulier "Maven: The Definitive Guide" ou encore "Better Builds with Maven". Comme leurs noms l'indiquent, il s'agit avant tout de livres �crits en anglais, donc pas n�cessairement accessibles � tout le monde. Le premier avantage ind�niable d'Apache Maven est donc d'�tre �crit dans la langue de Moli�re, et devrait donc s'attirer les faveurs de toute personne (francophone) qui souhaite conna�tre l'outil d'Apache.

Pour �tre tout � fait complet, on notera que le livre "Maven: The Definitive Guide" vient tout juste d'�tre traduit en fran�ais, "Maven : le guide d�finitif".

L'autre avantage de cet ouvrage, et c'est l� aussi son originalit�, est non pas d'exposer les fonctionnalit�s de Maven � la mani�re d'une "notice d'utilisation", mais de raconter une histoire, celle d'un projet qui vit et �volue au cours du temps. On suit ainsi les aventures d'une �quipe de d�veloppement qui va progressivement utiliser Maven au sein de leurs projets. Nous les accompagnons dans diff�rentes situations qui ne manqueront pas de nous rappeler nos propres exp�riences.
Ainsi, ce qui surprend agr�ablement d�s les premi�res pages, c'est le ton utilis� par les auteurs. C'est avec un ton l�ger que Nicolas et Arnaud nous racontent de nombreuses exp�riences r�elles, mettant en sc�ne diff�rents cas d'utilisation de Maven.


III-C. Composition

Comme je l'ai dit plus haut, ce livre est compos� de trois grandes parties :

  • Premiers pas avec Maven ;
  • Maven en entreprise ;
  • Encore plus loin avec Maven ;
Voyons maintenant leur contenu un peu plus en d�tail...


III-C-1. Premiers pas avec Maven

L'histoire d�bute donc avec un projet, noubliepaslalistedescourses, qui revit apr�s quelques ann�es d'errance. Ce programme, �crit en Java, nous replonge dans nos jeunes ann�es avec pour seul outil de compilation un simple fichier .bat. Voulant remettre ce programme � jour, Arnaud et Nicolas font face � leurs premiers probl�mes : comment faire une compilation fonctionnant sur des environnements h�t�rog�nes (Mac d'un c�t�, Windows de l'autre) ? De m�me, comment g�rer ces d�pendances qui sont pr�sentes de fa�on anarchique dans un r�pertoire lib ?

L'�quipe de d�veloppement va tr�s vite grossir, avec l'arriv�e de nouvelles t�tes, mais aussi de nouvelles id�es. Apr�s un court passage par Ant, nos comparses d�couvrent enfin Maven, et sont conquis par ses premiers atouts : gestion simplifi�e des d�pendances, cycle de vie de construction d'un projet, etc.

Cette premi�re partie va donc nous montrer les fondamentaux de Maven dans son utilisation au sein d'une �quipe en mettant en lumi�re les fonctionnalit�s "de base" de l'outil d'Apache :

  • Gestion des d�pendances, et leurs versions ;
  • Utilisation de diff�rents JDK, ou d'autres langages (comme Groovy par exemple) ;
  • Cr�ation des livrables (le JAR final par exemple) ;
  • Politique de tests, avec les diff�rents types de tests (unitaires, fonctionnels, d'int�gration, etc.) ;
  • Mise en place d'une int�gration continue.

III-C-2. Maven en entreprise

Maintenant que les premi�res pi�ces du puzzle sont mises en place, nos amis abordent des questions plus pouss�es, des aspects de Maven qui prennent tout leur sens dans un environnement d'entreprise. Ainsi, la premi�re probl�matique abord�e est la gestion avanc�e des d�pendances, et en particulier l'introduction des d�p�ts d'entreprises (les repositories).

Par la suite, ils s'interrogent sur la fa�on de simplifier un projet qui prend d�sormais une certaine ampleur, en divisant le projet en sous-modules, et en utilisant les principes d'h�ritage et d'agr�gation de Maven. Une fois cette �tape accomplie, nos chers d�veloppeurs concentrent leurs efforts sur la cr�ation de livrables un peu plus complexes qu'un "simple" JAR : les projets web (WAR) ou les EJB.

Il est d�sormais temps de vraiment s'int�resser � l'int�gration de tout ceci au sein de leur principal outil : l'IDE (l'environnement de d�veloppement). Eclipse, NetBeans ou encore IntelliJ sont donc �tudi�s par notre �quipe afin de conna�tre la facilit� d'utilisation de Maven directement dans l'IDE, et �galement de soulever les petits plus que chacun de ces outils peut offrir au d�veloppeur pour faciliter son travail quotidien.

Cette seconde partie s'ach�ve sur un point crucial de la vie d'un projet : la livraison ! Cette �tape est trop souvent b�cl�e, car parfois r�alis�e dans l'urgence, ou encore parce que l'intervention humaine - et donc manuelle - tient une place trop importante. Ici, nous abordons ces probl�matiques et voyons comment Maven peut simplifier, automatiser et fiabiliser ce processus.


III-C-3. Encore plus loin avec Maven

Cette derni�re partie aborde diff�rents sujets qui n'ont pas �t� encore vus dans les chapitres pr�c�dents. Tout d'abord, l'�quipe �tudie la fa�on de lancer des t�ches par Maven alors qu'aucun plugin sp�cifique n'existe pour cela. Pour faire face � ce probl�me, on aborde ici deux solutions, l'une ax�e sur l'int�gration d'Ant dans Maven, l'autre sur le d�veloppement d'un plugin personnel.

Voici maintenant que l'�quipe de d�veloppement s'int�resse � un sujet d'actualit� : la surveillance de la qualit� du code. L� aussi, Maven peut apporter des solutions - essentiellement gr�ce � des plugins ou � Sonar - et les auteurs ne manquent pas de nous le montrer. C'est �galement le bon moment pour introduire la fonctionnalit� de g�n�ration de site - et de rapports techniques - offerte par Maven !

L'�quipe, bien agrandie et bien rod�e maintenant, souhaite d�marrer un nouveau projet. C'est ici l'occasion de voir les recommandations que l'on peut faire sur de nouveaux projets, et non plus de parler de migration de projets existants vers Maven. On passe ainsi en revue certaines bonnes pratiques � mettre en place d�s le d�but d'un projet, on apprend �galement � utiliser les archetypes de Maven, ces plugins qui nous permettent de cr�er le squelette d'un projet en fonction de son type.

La soci�t� fond�e par notre �quipe a d�sormais connu un essor mondial. Nos amis se posent alors une question cruciale : "avons-nous fait le bon choix ?". C'est ici que l'on fait une sorte de bilan, de savoir si finalement Maven est v�ritablement l'outil � utiliser au sein de nos projets, d'en d�finir les limitations et les probl�mes. Les auteurs nous parlent ensuite de l'�cosyst�me autour de Maven : ses concurrents (Ant, Ivy et Gradle en premi�re ligne), les soci�t�s qui gravitent autour de l'outil (en particulier Sonatype), etc. Enfin, on termine avec quelques pages nous montrant les nouveaut�s de Maven 3.

Avant de conclure cet ouvrage, les auteurs d�cident de nous offrir leurs recommandations vis-�-vis de l'utilisation de Maven, leurs 10 commandements. Un conseil : lisez-les et surtout respectez-les !


III-D. Mon avis

Apache Maven est un livre plut�t atypique. Il doit s'aborder plus comme un roman que comme un livre technique traditionnel, et ne doit pas �tre pris pour une sorte de "bible" sur l'outil d'Apache. Le fait que Nicolas et Arnaud aient abord� le sujet de Maven en racontant la vie et l'�volution d'une �quipe de d�veloppement est une excellente id�e, car cela nous montre un usage tr�s r�el et concret de cet outil. Cela nous permet �galement de voir tous les �-c�t�s qui ne sont habituellement pas trait�s par des ouvrages informatiques sur un outil. Ici, au-del� de Maven, les auteurs �voquent le TDD (Test Driven Development ou D�veloppement pilot� par les tests), les diff�rentes fa�ons de tester son application, le suivi de qualit�, l'int�gration continue, l'aspect livraison, les bonnes et mauvaises pratiques en g�n�ral, etc. C'est forc�ment un autre bon point pour ce livre !

Alors certes mon niveau en Maven, qui est plut�t bon, ne m'a pas permis de sortir de cette lecture avec beaucoup de nouvelles informations. Toutefois, cela m'a permis de me conforter dans mes id�es, d'assurer mes bonnes pratiques, et d'apprendre quelques astuces plut�t sympathiques. Le fait que ce livre aborde vraiment tous les aspects de la vie d'un projet est un �norme plus, et pourra, � mon avis, int�resser des personnes n'ayant pas un profil de d�veloppeur !

Selon moi, ce livre doit �tre vu comme un indispensable compl�ment � une "bible" Maven par exemple Maven: The Definitive Guide, d'autant que ce dernier vient tout juste d'�tre traduit en fran�ais.


J'ai aim� ! Je n'ai pas aim� !
Enfin un livre en fran�ais sur Maven ! Ce n'est pas LA "bible" sur Maven, certains aspects tr�s pointus ne sont pas abord�s.
Le ton l�ger, tr�s agr�able � lire. N'apprendra pas forc�ment beaucoup aux personnes rod�es � Maven.
Beaucoup de retours d'exp�riences, de cas r�els.  
Les sujets connexes abord�s par les auteurs.  

IV. R�f�rences


IV-A. Liens


IV-B. Remerciements

Tout d'abord, je remercie les �ditions Pearson de m'avoir permis de r�aliser cette critique.
Ensuite, bien s�r, je remercie Nicolas de Loof et Arnaud H�ritier pour leur excellent travail sur cet ouvrage.
Je remercie �galement Eric (alias Ricky81) d'avoir pens� � moi pour ce travail, mais �galement pour ses commentaires.
Merci enfin � Wachter pour sa relecture.



������������ � Version PDF (Miroir) Version hors-ligne (Miroir)

Valid XHTML 1.0 TransitionalValid CSS!

Ce document est issu de http://www.developpez.com et reste la propri�t� exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise � l'obtention pr�alable de l'autorisation de l'auteur.