Coder Proprement


"Coder proprement", édité par Pearson en 2009, est la traduction française de "Clean Code:A Handbook of Agile Software Craftsmanship" édité par Prentice Hall en 2008. Ce livre a été écrit par l'équipe d'Object Mentor, dirigée Robert C. Martin, connu parfois sous le pseudonyme de "Uncle Bob Martin".
J'ai l'habitude de classer mes lectures en deux catégories : les livres à consulter et le livres à lire. Les premiers sont pénibles à lire mais sont des mines d'informations auxquelles ont se réfère des années plus tard. Les seconds sont agréables à lire et permettent avant tout de démarrer sur un sujet. "Coder proprement" est un mélange des deux.

Dans la première partie, l'auteur nous expose sa vision d'un bon code (comment choisir les noms, mettre le code en forme, gérer les exceptions ou commenter son code) et d'une bonne conception. J'ai beaucoup aimé les chapitres sur le code ; ils sont pleins de bon sens et vont à l'encontre de vieilles habitudes. Les chapitres suivants reprennent des sujets traités plus en détail dans d'autres ouvrage auxquels l'auteur fait d'ailleurs référence (Refactoring, Design Patterns).
Dans la deuxième partie, l'auteur met des principes en musique sur des exemples concrets : un petit utilitaire maison, un bout de code de JUnit du vénérable Kent Beck et un utilitaire de date. A chaque fois, le code est torturé pour le rendre plus beau et plus lisible. Certaines décisions sont discutables, le processus est long, mais le résultat est impressionnant.
La dernière partie reprend la liste des règles du "Coder proprement", classées en sept catégories. Je dois avouer que je n'ai pas lu cette partie dans son intégralité. Par contre, j'y jète un coup d'œil de temps en temps pour retrouver les tenants et aboutissants de telle ou telle règle.

En conclusion, ce livre est indispensable dans toute bibliothèque de développeur, et de développeur uniquement car les gros morceaux de code dont il est truffé auraient vite écœuré un non-développeur. Par contre, j'ai été déçu par plusieurs aspects. Par exemples, sur la partie architecture, pour ceux qui auraient déjà lu les ouvrages cités en référence, ces chapitres ne sont qu'une redite. De même, sur le code, beaucoup de ce qui est expliqué est connu de nombreux développeurs. Malgré tout cela, j'ai aimé le lire et il a la qualité de rassembler toute la logique qui mène à du bon code, dans un ensemble cohérent avec des exemples étayés.

Alexis.
Comments