Software Craft (le livre) - Quelques réflexions
Où je note quelques remarques sur le livre Software Craft (Dunod)
J'ai commencé la lecture ce week-end du livre "Software Craft - TDD, Clean code et autres pratiques essentielles", l'un des rares livres sur les pratiques "craft" en français (non traduit de l'anglais bien entendu...)
Quelques éléments qui m'ont marqué, dès l'avant-propos et le premier chapitre.
Working code is a low bar.
Cela reste un enjeu difficile à appréhender, que ce soit pour de nombreux développeurs, ou pour les métiers qui gravitent autour du développement. Faire fonctionner un logiciel est rarement un enjeu, et ce n'est qu'une étape dans l'ingénierie.
Définir le besoin est au moins aussi difficile que d'écrire le code correspondant.
L'activité d'ingénierie logicielle est principalement un processus de découverte progressive du besoin, d'où découle la nécessite de processus itératifs, de boucles de feedbacks courtes, etc...
TDD, le pilier
Parmi les pratiques incontournables, le premier chapitre est consacré à TDD. C'est parfaitement logique. S'il devait rester un incontournable, à la fois pilier et levier pour actionner d'autres méthodologies et techniques, c'est le TDD.
Pourtant, et y compris dans les quelques workshops que j’ai proposés par le passé, TDD est souvent abordé après le "clean code" ou la clean architecture.
Pourquoi ? Parce que TDD est sans doute plus difficile à adopter, il nécessite du temps et une remise en question importante des habitudes.
Malgré tout, commencer par TDD est, in fine, le choix évident.