Shadow
Shadow
engineer-working-data-center-using-artificial-inte-2025-02-19-23-19-31-utc (1)
Blog > 15 avril 2025 - TECH

Développer avec l’IA : avantages et inconvénients

Shadow
C’est peut-être l’un des débats informatiques qui se retrouve le plus dans la société actuelle : 
l’usage d’IA générative s’est démocratisé en quelques années, même si cela pose des questions éthiques 
et financières. Or ces modèles de langage naturel ont la capacité de transformer des prompts en code : 
pour les professionnels, le choix d’une solution IA adaptée au contexte professionnel est donc très important, à ce jour. 

TUTORIAL

 

Étape 1 : Connaître les différents services de développement avec l’IA

Aujourd’hui, rares sont les environnements de développements qui n’ont pas intégré, a minima, une dose d’IA : les outils d’autocomplétion de code, qui viennent suggérer la suite d’une fonction ou d’une opération, font partie de nombre d’IDE majeurs. Sur Visual Studio, après IntelliSense est venu IntelliCode, qui a été créé par machine learning pour donner directement des lignes de code complètes à partir de quelques lettres.

À ces solutions de saisie semi-automatique avancées sont venues s’ajouter des interfaces boostées par l’IA de plus en plus élaborées. Nombre de développeurs spécialisés peuvent rédiger des prompts dans les différents outils de codage, en local ou sur le cloud : le chatbot GitHub Copilot (disponible notamment dans Visual Studio), les solutions Google (Gemini) ou Amazon (Whisperer), sans oublier TabNine ou AskCodi, ces derniers pouvant intégrer différents environnements.

Enfin, les solutions d’assistance au développement les plus révolutionnaires sont les plateformes Low Code et surtout NoCode. Avec ce type de technologie, des modules, voire des projets complets, peuvent être codés automatiquement à partir de prompts rédigés en langage naturel. Windsurf Editor (Codeium), Bolt, Replit… Les grands acteurs du NoCode constituent aujourd’hui un marché entier, avec des conséquences économiques et professionnelles majeures.

 

Étape 2 : Arbitrer les avantages et les inconvénients des solutions IA de code

En fonction du degré d’autonomie de l’IA et de ses modalités de modifications du code, les différentes solutions d’assistance au développement disposent d’avantages et d’inconvénients spécifiques. Ainsi, l’autocomplétion présente dans un IDE s’avère une assistance idéale dans la rédaction pure, avec une plus-value à la saisie, grâce à des suggestions logiques. Mais ce type d’outils reste à la surface, et ne permet pas la même optimisation que ceux qui génèrent du code.

Les copilotes et autres chatbots qui sont installés dans des IDE locaux ou des environnements de développements cloud disposent d’une plus large autonomie. Les développeurs peuvent en tirer profit en particulier lorsqu’il s’agit de faire vérifier des dépendances, de détecter des erreurs potentielles avant compilation ou d’obtenir des confirmations de conformité en termes de normes ou de bonnes pratiques (c’est particulièrement vrai pour le webdev backend sur les plateformes de cloud). Leur intérêt se limite seulement à l’exploration de modules spécifiques : le développeur humain garde toute la maîtrise de son projet.

Sur les plateformes de NoCode et de Low Code, on vient chercher davantage d’automatisations : à partir de prompts précis, le développement d’un frontend, d’une base de données, voire d’une appli, se fait de manière très souple. S’ils peuvent, sur le papier, remplacer les développeurs humains, ces outils ont cependant de lourds inconvénients : leur prix peut s’envoler en fonction du pricing (gestion des tokens, dépendances, serveurs sont comptabilisés et facturés de manière immédiate), la scalabilité des applis développées n’est pas toujours anticipée par l’IA, et un vendor-lock peut mettre en danger l’existence d’un projet si celui-ci est entièrement dépendant d’une plateforme.

 

Étape 3 : Installer un outil en fonction de ses besoins

C’est donc en fonction des projets qu’il faut réfléchir à l’implantation d’une solution IA pour assister un développeur. Évidemment, lorsqu’on entame un nouveau projet, le choix de l’environnement de développement entraînera le choix de la solution d’autocomplétion intégrée. En revanche, pour les chatbots plus avancés, il peut être opportun de désigner une solution dès le début d’un projet : si, par exemple, la production implique un environnement comme Azure ou Google Cloud, l’usage d’IntelliCode ou de Gemini sera conseillé. Si la génération de code par une plateforme de NoCode ou de Low Code est impérative, mieux vaut en revanche la limiter à de « simples » modules ou à des modèles, afin d’éviter un verrouillage ou des dépendances imposées.

 

Étape 4 : Améliorer son workflow en développement assisté ou copiloté

L’un des points cruciaux lorsqu’on travaille avec une équipe de développement reste le contrôle des versions. Et il en va de même avec un staff composé aussi bien de codeurs humains que de copilotes IA. C’est pourquoi l’intégration d’outils de versioning comme GitHub, Spiratest ou Apache Subversion permet de garder trace de toutes les interventions sur un projet, qu’elles proviennent d’un automate ou non.

L’humain a également pour mission de garantir l’interopérabilité du code lors de sa rédaction, et aussi de son éventuelle génération. Dans un workflow de développement assisté par IA, les chefs de projets ont donc pour rôle d’avoir une vue d’ensemble sur l’appli ou le module durant sa création, et doivent contrôler si tout ce qui est généré reste compatible avec l’ensemble des systèmes de l’entreprise, par exemple.

L’une des possibilités offertes par l’IA doit enfin être utilisée à son plein potentiel : la génération de documentation automatisée permet aux équipes de faciliter le travail d’explication de leur code, ainsi que les futures maintenances.

 

Avec l’IA, le développement brut peut être grandement facilité, de même que la documentation. L’apport de la génération de code a non seulement apporté des gains de productivité de 25 à 40 % – d’après GitHub Next, étude de 2023 – mais aussi au métier d’évoluer : de plus en plus de développeurs auront à monter en compétence vers la vérification et la gestion de projets dans les prochaines années, à mesure des avancées des générateurs automatiques de code.

Rejoins nos rangs !