Quelle est la différence entre la réutilisation de code et la duplication de code?


Réponse 1:

À mesure que nous passons à une architecture logicielle reposant sur plusieurs référentiels, plusieurs microservices, etc., les duplications de code deviennent un problème croissant.

Supposons que vous ayez un petit morceau de code appelé «user-status» qui vérifie si un utilisateur est connecté.

Vous devrez utiliser cette fonction à plusieurs endroits de votre système utilisateur (probablement 4 à 5 microservices au moins). Cela crée des DUPLICATIONS.

Le code dupliqué est très mauvais, principalement parce que cela signifie que très bug / mise à jour / correction devra être effectué à plusieurs endroits (ce qui a également tendance à casser les choses). Voir plus ici.

Pour éviter cela, vous devrez rendre ces petits morceaux de code réutilisables. Vous pouvez le faire en les exportant à partir de votre code et en les utilisant dans différents référentiels.

Une façon de le faire est d'utiliser des micro-packages. C'est une mauvaise idée. Cela prendra beaucoup de temps, d'efforts et ajoutera de nombreuses complexités et problèmes de maintenance.

Une meilleure solution serait de les transformer en composants Bit. Bit est un projet OSS qui vous permet de créer et de réutiliser facilement de petits composants avec très peu de frais généraux. Vous pouvez les héberger sur votre machine locale ou vous connecter gratuitement au hub de la communauté bitsrc. Voici un exemple de certaines fonctions utilitaires couramment dupliquées et réutilisées.

Bonne chance!


Réponse 2:

La réutilisation de code consiste à écrire une méthode / fonction qui exécute du code fréquemment utilisé. Cette méthode peut être utilisée autant de fois que nécessaire chaque fois et n'importe où. Un exemple peut être trouvé dans les bibliothèques tierces.

La duplication de code consiste à écrire le même code qui remplit presque la même fonction chaque fois que cela est nécessaire. Ceci est généralement déconseillé car la maintenance du projet sera difficile, c'est-à-dire à moins de garder une trace de tous les endroits où vous avez utilisé le code répété.


Réponse 3:

D'après mon expérience, la réutilisation se fait lorsque vous avez des fonctionnalités existantes dans le programme A que vous commencez à utiliser dans le programme B.

La duplication consiste à utiliser plusieurs fois la même fonctionnalité ou des fonctionnalités presque identiques dans le même programme et à les écrire à chaque fois. Par exemple, vous ouvrez et lisez un fichier et à chaque fois utilisez le même code pour ce faire. Au lieu de cela, vous devez écrire une fonction générique «ouvrir et lire un fichier» qui gère cela et appeler à partir de vos autres fonctions, réduisant ainsi la base de code.