Y a-t-il des avantages à supprimer les instructions using inutilisées dans un projet VS (comme cela peut être fait à l'aide de Resharper), ou VS s'en occupera-t-il automatiquement lors de la construction / du déploiement?
visual-studio
resharper
Clay Shannon
la source
la source
removing unused references
(DLL) et toutes les réponses sont sur le pointremoving unused using statements
.Réponses:
Il n'y a aucun avantage en termes de performances, si c'est ce que vous voulez dire.
Toutes les références dans un assemblage sont pleinement qualifiées; le compilateur utilise simplement les références que vous fournissez dans votre code pour qualifier pleinement les identificateurs, donc le seul impact des références inutilisées dans votre code source est une légère diminution de la lisibilité (pourquoi cette référence est-elle ici?), et une augmentation triviale du temps de compilation.
En d'autres termes, l'IL généré est exactement le même, que vous supprimiez ou non les références inutilisées.
la source
using
références s ou DLL inutilisées (Reference Include
élément de fichier MSBuild,/reference:
argument CSC). J'avais à l'esprit: Supprimer lesusing
s inutilisés d'un projet d'application Web. Celles-ci avaient été les seules lignes de code obligeant à inclure un tas de références DLL, alors supprimez-les maintenant. Comme vous le dites, la construction est plus rapide, plus encore si les références sont des chemins UNC (CSC vérifie tous les chemins de référence). Trivial win 2: la vitesse du CI (les scripts récupèrent toutes les DLL référencées) s'améliore car moins de fichiers sont copiés, par exemple du serveur de contrôle de source vers le serveur de génération pour publier le serveur sur le (s) serveur (s) d'application.Oui - je peux penser à deux avantages principaux:
la source
Supprimer le code inutilisé n'est qu'un bagage supplémentaire et difficile à mesurer les gains d'efficacité.
La suppression du code inutilisé réduit le temps de compilation, je travaille sur un projet qui prend entre 15 et 20 minutes, il y a des tonnes de code inutilisé. L'élimination du code inutilisé a réduit le temps de compilation à ~ 7 minutes. Cela fait une différence quand il y a beaucoup de développeurs dans l'équipe, cela fait gagner du temps à tout le monde pour construire et tester rapidement.
Si vous avez automatisé votre build et vos tests unitaires, vous avez maintenant supprimé les tests unitaires dont vous n'avez pas besoin. encore une fois, cela réduit le temps nécessaire pour exécuter les tests unitaires. Juste une efficacité accrue dans votre processus de gestion de construction continue.
la source