Introduction
L'utilisation des modèles de langage (LLMs) pour écrire du code peut sembler pratique, mais cela peut également conduire à des problèmes de maintenance à long terme. Les LLMs peuvent générer du code qui fonctionne, mais qui ne suit pas nécessairement les meilleures pratiques de développement.
Le problème de la duplication de code
Un exemple de cela est la duplication de code. Si un développeur utilise un LLM pour générer du code qui effectue la même vérification d'accès à plusieurs endroits, le modèle peut générer du code qui fonctionne, mais qui est dupliqué. Par exemple :
if (user.isActive && user.hasPermission('read') && !user.isSuspended && account.status === 'open') { // faire quelque chose } Ce code peut être généré à plusieurs endroits, ce qui peut rendre la maintenance plus difficile.Les conséquences de la duplication de code
La duplication de code peut sembler sans conséquence à court terme, mais elle peut avoir des effets négatifs à long terme. Les LLMs apprennent à partir du code existant et peuvent reproduire les mêmes erreurs ou mauvaises pratiques. Cela signifie que si un développeur utilise un LLM pour générer du code qui duplique des conditions, le modèle peut continuer à générer du code qui duplique ces conditions, ce qui peut rendre la maintenance encore plus difficile.
La solution : écrire du code comme un humain le maintiendra
La solution à ce problème est d'écrire du code comme un humain le maintiendra. Cela signifie suivre les meilleures pratiques de développement, telles que l'extraction de fonctions communes en helpers partagés. Les LLMs sont comme des éponges qui absorbent tout ce que l'on fait et le reproduisent, il est donc important de s'assurer que le code généré est de bonne qualité. En écrivant du code de manière à ce qu'un humain puisse le maintenir, les développeurs peuvent éviter les problèmes de duplication de code et de maintenance à long terme.