IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)

Vous �tes nouveau sur Developpez.com ? Cr�ez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et �tre connect� pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Cr�ez-en un en quelques instants, c'est enti�rement gratuit !

Si vous disposez d�j� d'un compte et qu'il est bien activ�, connectez-vous � l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oubli� ?
Cr�er un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

L'outil d'IA GitHub Copilot am�liore-t-il la qualit� du code ? Si GitHub estime que le code produit est plus fonctionnel
GitClear note que cela peut entra�ner � une dette technique induite par l'IA �

Le , par St�phane le calme

73PARTAGES

8  0 
L'outil d'IA GitHub Copilot am�liore-t-il la qualit� du code ? Si GitHub estime que le code produit est plus fonctionnel,
GitClear rappelle que l'utilisation d'un tel outil peut conduire � � une dette technique induite par l'IA �

Avec l'av�nement des outils d'intelligence artificielle dans le d�veloppement logiciel, GitHub Copilot, bas� sur GPT, est devenu un acteur majeur. Mais une question fondamentale demeure : cet assistant de programmation am�liore-t-il r�ellement la qualit� du code produit ?

Qu'est-ce que GitHub Copilot ?

GitHub Copilot est un outil d'IA d�velopp� par OpenAI et GitHub. En s'appuyant sur des mod�les d'apprentissage automatique entra�n�s sur des milliards de lignes de code, il offre des suggestions de compl�tion en temps r�el. Que ce soit pour r�diger des fonctions, corriger des erreurs ou m�me g�n�rer des tests, il promet d'acc�l�rer le d�veloppement tout en r�duisant les efforts cognitifs des d�veloppeurs.

Pour GitClear, l'utilisation GitHub Copilot pour la programmation entra�ne une baisse de la qualit� globale du code

Selon une �tude de GitClear, la qualit� du code n'est pas bonne, avec des probl�mes tels que le renouvellement du code (du code ajout�, mais supprim� peu apr�s) et une plus grande proportion de code r�p�t�. L'�tude porte sur le code ajout�, mis � jour, supprim�, copi� ou d�plac�, et exclut ce que GitClear d�finit comme du � bruit �. Cela fait r�f�rence au m�me code engag� dans plusieurs branches, des lignes vierges et d'autres lignes non significatives.

Citation Envoy� par GitClear
GitHub a publi� de nombreuses �tudes approfondies sur la croissance et l'impact de l'IA sur le d�veloppement de logiciels. L'une de leurs conclusions est que les d�veloppeurs �crivent du code "55 % plus vite" lorsqu'ils utilisent Copilot. Cette profusion de code g�n�r� par les grands mod�les de langage soul�ve la question suivante :

Comment la qualit� et la maintenabilit� du code se comparent-elles � ce qui aurait �t� �crit par un humain ? Est-ce plus proche des contributions soign�es et raffin�es d'un d�veloppeur senior, ou plus proche du travail d�sordonn� d'un contractant � court terme ?

Pour r�pondre � cette question, GitClear a analys� environ 153 millions de lignes de code modifi�es, r�dig�es entre janvier 2020 et d�cembre 2023. Il s'agit de la plus grande base de donn�es connue sur les modifications de code hautement structur�es qui a �t� utilis�e pour �valuer les diff�rences de qualit� du code. Nous constatons des tendances d�concertantes en mati�re de maintenabilit�.
Selon Bill Harding, fondateur de GitClear, l'essentiel est que les assistants de code de l'IA sont tr�s bons pour ajouter du code, mais ils peuvent causer � une dette technique induite par l'IA � : � L'ajout rapide de code est souhaitable si vous travaillez de mani�re isol�e ou sur un probl�me nouveau. Mais un code ajout� � la va-vite est n�faste pour les �quipes charg�es d'en assurer la maintenance par la suite �, a d�clar� Harding. En d'autres termes, une plus grande quantit� n'est pas toujours synonyme d'une meilleure qualit�. Selon lui, cette tendance pourrait poser de nombreux probl�mes aux organisations � l'avenir.

En outre, une �tude publi�e en octobre dernier a rapport� que GitHub Copilot g�n�re du code comportant des faiblesses de s�curit�. � Nos r�sultats confirment que les d�veloppeurs doivent �tre prudents lorsqu'ils ajoutent du code g�n�r� par Copilot (et des outils d'IA similaires de g�n�ration de code) et doivent �galement effectuer des contr�les de s�curit� appropri�s lorsqu'ils acceptent le code sugg�r�. Cela montre �galement que les praticiens doivent d�velopper une conscience et des comp�tences en mati�re de s�curit� correspondantes �, ont �crit les chercheurs � l'origine de l'�tude.

Dans le cadre de son �tude, GitClear a mis l'accent sur la qualit� du code plut�t que sur la quantit�, et observe que les assistants d'IA ont tendance � donner "des suggestions pour ajouter du code, mais jamais de suggestions pour mettre � jour, d�placer ou supprimer du code". Les chercheurs proposent �galement que les algorithmes de suggestion de code soient incit�s � proposer les suggestions les plus susceptibles d'�tre accept�es, ce qui semble raisonnable jusqu'� ce que l'on consid�re l'importance d'un code concis et lisible. Selon le rapport de l'�tude, il n'est pas facile de mesurer la qualit� du code.


GitHub tire une conclusion diff�rente avec sa propre recherche sur GitHub Copilot

Pour r�pondre � cette question, GitHub indique avoir men� un essai contr�l� randomis� pour comprendre � quel point le code r�dig� � l'aide de GitHub Copilot est fonctionnel, lisible, fiable, maintenable, concis et susceptible d'�tre approuv�.

Pour cette �tude, GitHub a recrut� 202 d�veloppeurs ayant au moins cinq ans d'exp�rience. La moiti� d'entre eux se sont vu attribuer au hasard un acc�s � GitHub Copilot et l'autre moiti� a re�u pour instruction de ne pas utiliser d'outils d'IA. Les participants ont tous �t� invit�s � effectuer une t�che de codage en �crivant des points d'extr�mit� d'API pour un serveur web. GitHub a ensuite �valu� le code � l'aide de tests unitaires et d'un examen d'expert r�alis� par des d�veloppeurs.

Selon les conclusions de cette �tude, le code r�dig� avec GitHub Copilot a une fonctionnalit� accrue et une meilleure lisibilit�, est de meilleure qualit� et re�oit des taux d'approbation plus �lev�s. Parmi les points cl�s :
  • Fonctionnalit� accrue : les d�veloppeurs ayant acc�s � GitHub Copilot avaient 56 % plus de chances de r�ussir les 10 tests unitaires de l'�tude, ce qui indique que GitHub Copilot aide les d�veloppeurs � �crire un code plus fonctionnel, et ce dans une large mesure.
  • Am�lioration de la lisibilit� : lors des �valuations en aveugle, le code �crit avec GitHub Copilot pr�sentait nettement moins d'erreurs de lisibilit�, ce qui a permis aux d�veloppeurs d'�crire 13,6 % de lignes de code suppl�mentaires, en moyenne, sans rencontrer de probl�mes de lisibilit�.
  • Un code de meilleure qualit� : la lisibilit� s'est am�lior�e de 3,62 %, la fiabilit� de 2,94 %, la maintenabilit� de 2,47 % et la concision de 4,16 %. Tous les chiffres sont statistiquement significatifs. Ces am�liorations de la qualit� sont coh�rentes avec celles constat�es dans le rapport DORA 2024.
  • Des taux d'approbation plus �lev�s : les d�veloppeurs �taient 5 % plus enclins � approuver le code �crit avec GitHub Copilot, ce qui signifie que ce code est pr�t � �tre fusionn� plus t�t, acc�l�rant ainsi le temps n�cessaire pour corriger les bogues ou d�ployer de nouvelles fonctionnalit�s.

GitHub a donn� des d�tails sur ces �l�ments. Ci-dessous, un extrait de leur billet � ce sujet.

Le code �crit � l'aide de GitHub Copilot est plus fonctionnel

Si le code ne fonctionne pas, il est impossible de dire qu'il est de haute qualit�. Nous avons donc examin� la fonctionnalit� et l'avons mesur�e en analysant le nombre de tests unitaires r�ussis par le code. Nous avons constat� que le code r�dig� � l'aide de GitHub Copilot passait significativement plus de tests (p=0,002). En fait, les d�veloppeurs ayant acc�s � GitHub Copilot avaient 56 % plus de chances de r�ussir les 10 tests unitaires de l'�tude (p=0,04). Cela signifie que l'utilisation de GitHub Copilot aide les d�veloppeurs � �crire un code qui est plus fonctionnel, et ce, dans une large mesure.


Les d�veloppeurs ont trouv� que le code �crit avec GitHub Copilot �tait plus facile � lire

Les 25 d�veloppeurs qui ont r�dig� un code ayant r�ussi les 10 tests unitaires de la premi�re phase de l'�tude ont �t� d�sign�s au hasard pour examiner en aveugle les soumissions anonymes, qu'elles aient �t� r�dig�es avec ou sans GitHub Copilot. Les examinateurs ont constat� que le code r�dig� � l'aide de GitHub Copilot comportait moins d'erreurs de lisibilit�.

Notre analyse de la revue de code ligne par ligne des d�veloppeurs a montr� que le code �crit � l'aide de GitHub Copilot comportait beaucoup moins d'erreurs de code : les d�veloppeurs utilisant GitHub Copilot ont �crit 18,2 lignes de code par erreur de code, contre seulement 16,0 sans GitHub Copilot. Cela �quivaut � 13,6 % de lignes de code en plus avec GitHub Copilot en moyenne sans erreur de code (p=0,002). Cela peut se traduire par des �conomies en temps r�el, car chacune de ces erreurs de code n�cessite une action de la part d'un d�veloppeur. Par exemple, sans utiliser GitHub Copilot, les �quipes peuvent �tre confront�es � 13 % de commentaires ou de suggestions suppl�mentaires � traiter, ce qui s'accumule au fil du temps.


Le code r�dig� � l'aide de GitHub Copilot a plus de chances d'�tre approuv�

Enfin, nous avons constat� que les d�veloppeurs �taient 5 % plus susceptibles d'approuver le code r�dig� � l'aide de GitHub Copilot (p=0,014). Dans le monde r�el, cela signifie que les d�veloppeurs utilisant GitHub Copilot �crivent du code qui est pr�t � �tre fusionn� plus t�t, ce qui acc�l�re la correction des bogues ou le d�ploiement de nouvelles fonctionnalit�s.


Alors, am�liore-t-il r�ellement la qualit� ?

La r�ponse d�pend largement de l'utilisateur et de l'usage. GitHub Copilot est un outil puissant, mais il n'est pas infaillible. Lorsqu'il est utilis� comme assistant, capable de r�duire le temps consacr� � des t�ches r�p�titives ou triviales, il peut contribuer indirectement � la qualit� en lib�rant les d�veloppeurs pour des t�ches strat�giques. Cependant, la responsabilit� ultime de produire un code robuste, s�curis� et maintenable reste entre les mains des d�veloppeurs.

Cela semble d'ailleurs �tre l'avis d'une �tude r�alis�e par McKinsey l'ann�e derni�re qui a r�v�l� qu'une � augmentation massive de la productivit� � gr�ce aux assistants d'IA de programmation �tait possible, mais qu'elle d�pendait de la complexit� de la t�che et de l'exp�rience du d�veloppeur. � En fin de compte, pour maintenir la qualit� du code, les d�veloppeurs doivent comprendre les attributs d'un code de qualit� et inciter l'outil � produire les bons r�sultats �, indique l'�tude de McKinsey.

En conclusion, GitHub Copilot peut am�liorer la qualit� du code, mais uniquement dans les mains d'utilisateurs exp�riment�s capables de valider et d'adapter ses suggestions. Il ne remplace pas les bonnes pratiques de d�veloppement, mais il les compl�te efficacement.

Source : GitHub

Et vous ?

Trouvez-vous l'�tude de GitHub cr�dible ou pertinente ?

Avez-vous essay� Copilot ? Pensez-vous qu'il influence votre mani�re de coder ?

Les suggestions de Copilot sont-elles toujours align�es avec les meilleures pratiques de d�veloppement ?

Peut-on vraiment consid�rer le code g�n�r� par Copilot comme fiable, ou n�cessite-t-il syst�matiquement une revue manuelle approfondie ?

Pensez-vous que Copilot favorise l�apprentissage chez les d�veloppeurs d�butants ou au contraire qu�il limite leur compr�hension profonde des concepts ?

Les d�veloppeurs exp�riment�s gagnent-ils r�ellement du temps ou risquent-ils de perdre leur cr�ativit� face aux suggestions automatis�es ?
Vous avez lu gratuitement 0 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer � vous proposer des publications.

Une erreur dans cette actualit� ? Signalez-nous-la !

Avatar de kain_tn
Expert �minent https://www.developpez.com
Le 25/11/2024 � 20:14
Citation Envoy� par St�phane le calme Voir le message

La r�ponse d�pend largement de l'utilisateur et de l'usage. GitHub Copilot est un outil puissant, mais il n'est pas infaillible. Lorsqu'il est utilis� comme assistant, capable de r�duire le temps consacr� � des t�ches r�p�titives ou triviales, il peut contribuer indirectement � la qualit� en lib�rant les d�veloppeurs pour des t�ches strat�giques. Cependant, la responsabilit� ultime de produire un code robuste, s�curis� et maintenable reste entre les mains des d�veloppeurs.
Eh bien!!! On est loin du matraquage que toutes ces boites nous servent depuis des ann�es!!!
0  0 
Avatar de Camille12
Nouveau Candidat au Club https://www.developpez.com
Le 20/03/2025 � 8:50
GitHub Copilot repr�sente une avanc�e prometteuse pour les d�veloppeurs en automatisant des t�ches r�p�titives et en acc�l�rant la production de code. Cependant, les pr�occupations concernant les droits d�auteur et les licences open source sont l�gitimes. Il est essentiel que GitHub clarifie ces enjeux �thiques et juridiques afin de garantir une utilisation �quitable et transparente de l�outil.
0  0