Better, Faster, Lighter Java

Il y a différents types de livres informatiques : ceux qui vous servent à apprendre à utiliser un nouvel outil / langage. Ils sont souvent volumineux, abordant toutes les facettes du sujet. Puis ceux qui se concentrent sur les méthodes de développement ou de l’architecture logicielle.  Dans cette dernière catégorie on trouve aussi des pavés et ils décrivent souvent un monde idéal remplis d’outils géniaux, de méthodes très détaillées. Better, Faster, Lighter Java est tout sauf ça. C’est un livre concis, 200 pages, qui se focalise sur un problème du monde J2EE : les approches (lourdes) adoptées par les serveurs d’applications et la technologie des EJB. J’ai commencé trop récemment le développement pour connaître l’Himalaya qu’est le développement avec les EJB mais tout le monde est confronté aux mêmes questions : comment gérer la persistance, les transactions, les configurations etc … dans son application.

La multitude d’outils commerciaux ou non ne résout pas le problème, on choisit souvent le golden hammer ou pire on le redéveloppe. Après quelques blablas (les relations développeurs-managers ou les techniques commerciales des éditeurs) les auteurs s’attardent sur deux techniques souvent mal connues car difficile (en apparence) à appréhender :  la réflexivité et les mécanismes de configuration. Le graal étant pour les auteurs la transparence, l’extensibilité et la simplicité. Deux frameworks sont ensuite étudiés pour illustrer la mise en œuvre : Hibernate et Spring. Ces deux chapitres sont très bien écrits : les auteurs nous emmènent de la problématique basique que tout développeur rencontre pour nous montrer la solution apportée à travers un exemple. Sans rentrer dans le détail de ces outils, l’élégance de la solution devient évidente. Les deux derniers chapitres abordent d’une part le développement d’une application permettant l’extension et l’intégration à un existant d’autre part. Là aussi on apprendra beaucoup en peu de pages.

On regrettera sans doute certaines lenteurs dans les premiers chapitres et on aurait envie de voir d’autres domaines abordés mais l’essentiel est là : on se noie très vite dans des approches se voulant exhaustive quand on commence le développement, les solutions (et les outils) simples mais puissantes existent et vous pouvez les découvrir en lisant cet ouvrage.

billet publié dans les rubriques coding, readings le