Article racoleur mais la réponse à la question est simple à mon avis : aucun.
Quand vous êtes développeur vous codez, les générateurs de code sont là pour des gens qui ne codent pas ou ne veulent pas coder.
Rappel des problèmes inhérents à tout générateur de code :
-
Le code produit par un générateur a une qualité plafonnée par le niveau de compétence du développeur qui a codé le générateur.
-
Pour bénéficier des innovations, des correctifs de sécurité, des améliorations technologique, des nouvelles pratiques de développement, il faudra toujours attendre que le générateur soit patché, ce qui peut ne jamais arriver ou arriver dans un sens qui n'est pas celui que vous espérez.
-
Les "IA" ne fabriquent pas du code mais copient-collent du code tiré des bases de sources gigantesques sur lesquelles elles ont "apprises". Ce faisant le code produit l'est sous licence (coucou copilot).
-
Le code produit par un générateur a une architecture pré-conçue et figée, il est extrêmement difficile d'en extraire des composants (majoritairement tout se fait par couche, coucou JHipster).
-
Le code généré n'est jamais testé (ou alors trèèèès rarement). Donc le patcher / en modifier le comportement implique un énorme risque de régression.
-
Les applications générées souffrent de leurs propres bugs mais également des bugs du générateur.
-
Le code produit par le générateur ne collera jamais "out-of-the-box" aux contraintes techniques ni aux choix de l'entreprise, il faudra toujours l'adapter avec les difficultés citées plus haut.
-
Les choix techniques faits par les développeurs du générateur seront vos choix futurs, vous perdrez tout contrôle sur la technique. Cela revient à outsourcer l'intégralité de ses développements chez un tiers qui n'a aucun compte à vous rendre.
-
Il faut quelqu'un de formé à l'emploi du générateur pour le manipuler correctement, mais il faut en même temps que cette personne ait des compétences en développement pour s'assurer que le code généré convienne a minima aux attentes techniques. Les développeurs sont déjà des ressources rares, avec ce critère en plus ils deviennent des ressources rarissimes et se transformeront naturellement en SPOC (Single Point Of Failure) pour l'entreprise.
Comme le dit l'article, la génération de code n'est pas nouvelle, la grande mode du MDA (Model Driven Architecture) dans les années 2000 s'est terminée par une baffe car rappelons-le : une spécification qui décrit exactement ce que le programme doit faire, ça s'appelle du code.