Chapitre 7. Adopter le contrôle de type en pratique
Cet ouvrage a été traduit à l'aide de l'IA. Tes réactions et tes commentaires sont les bienvenus : translation-feedback@oreilly.com
De nombreux développeurs rêvent du jour où ils travailleront enfin sur un projet entièrement nouveau. Un projet green-field est un projet flambant neuf, où tu peux faire table rase de l'architecture, de la conception et de la modularité de ton code. Cependant, la plupart des projets deviennent rapidement des projets de type "brownfield", ou code hérité. Ces projets ont déjà fait un bout de chemin ; une grande partie de l'architecture et de la conception a été solidifiée. Les changements importants et radicaux auront un impact sur les utilisateurs réels. Le terme " brown-field" est souvent considéré comme péjoratif, surtout quand on a l'impression de patauger dans une grosse boule de boue.
Cependant, tous les projets de friche industrielle ne sont pas une punition pour travailler. Michael Feathers, auteur de Working Effectively With Legacy Code (Pearson), a ceci à dire :
Dans un système bien entretenu, il faut parfois un certain temps pour comprendre comment faire un changement, mais une fois que tu l'as fait, le changement est généralement facile et tu te sens beaucoup plus à l'aise avec le système. Dans un système ancien, cela peut prendre beaucoup de temps pour comprendre ce qu'il faut faire, et le changement est également difficile.1
Feathers définit le code hérité comme un "code sans tests". ...