Concept

Programmation par copier-coller

Résumé
La programmation par copier-coller est la production de code source par de nombreux copier-coller. Elle est un palliatif à des compétences insuffisantes en programmation informatique, mais peut être due à des limitations technologiques (par exemple, un environnement de développement peu expressif) là où des fonctions ou des bibliothèques logicielles seraient normalement utilisées. Elle est considérée comme acceptable voire nécessaire, par exemple avec le code redondant (boilerplate en anglais), le déroulage de boucle manuel (quand le compilateur ne sait pas le faire automatiquement), ou avec certains idiomes de programmation. Dans ces cas, cette pratique est prise en charge, par les éditeurs de texte et environnements de développement sous la forme de snippets. La programmation par copier-coller est souvent pratiquée par des développeurs inexpérimentés ou des étudiants pour qui l’écriture de code à partir de zéro est difficile et qui préfèrent chercher une solution toute faite ou une solution partielle qu'ils peuvent adapter pour résoudre leur propre problème. Les développeurs inexpérimentés qui copient souvent du code ne comprennent pas complètement le code qu'ils copient. Le problème vient plus de leur inexpérience et de leur manque de courage en programmation que du copier-coller en lui-même. Le code vient souvent de sources diverses telles que le code de leurs amis ou de leur collègues, les forums internet, le code produit par les professeurs ou assistant professeurs ou les livres sur la programmation. Le résultat est un assemblage de styles de code différents avec du code superflu. Cette pratique est également la cause de bugs : les décisions de conception provenant du code copié peuvent ne plus s'appliquer là où le code est reproduit. Le code collé peut être impénétrable car les noms des variables, classes, fonctions et autres sont rarement modifiés, même si leur utilisation peut être complètement différente dans le nouveau contexte. vignette|Réécriture de code répétitif en utilisant une abstraction telle qu'une fonction.
À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.