J'ai récemment commencé un nouveau travail où je travaille sur une très grosse application (15M loc). Dans mon travail précédent, nous avions une application similaire, mais (pour le meilleur ou pour le pire), nous utilisions OSGi, ce qui signifiait que l'application était divisée en une multitude de microservices pouvant être modifiés, compilés et déployés de manière indépendante. La nouvelle application est juste une base de code volumineuse, avec peut-être quelques fichiers .dll.
J'ai donc besoin de changer l'interface de cette classe, car c'est ce que mon patron m'a demandé de faire. Au départ, ils l’ont écrit avec des hypothèses qui n’ont pas été généralisées, et ils évitent le problème de la refactorisation depuis un certain temps, car il est si étroitement couplé. J'ai changé l'interface et maintenant, il y a plus de 25 000 erreurs. Certaines erreurs sont dans des classes avec des noms de sondage importants comme « XYZPriceCalculator » qui reaaallyne devrait pas casser. Mais je ne peux pas démarrer l'application pour vérifier si elle fonctionne tant que toutes les erreurs ne sont pas résolues. Et bon nombre des tests unitaires font directement référence à cette interface ou sont couplés à des classes de base faisant référence à cette interface. La simple réparation de celles-ci est donc une tâche très lourde en soi. De plus, je ne sais pas vraiment comment toutes ces pièces vont bien ensemble, donc même si je pouvais le faire commencer, je ne sais pas vraiment à quoi ça ressemblerait si les choses étaient cassées.
Je n'ai jamais vraiment été confronté à un problème de ce type lors de mon dernier emploi. Que fais-je?