Je suis un peu bizarre et j'ai tendance à garder mes projets en nettoyant les références et les using
s dans chaque classe pour ne garder que ce qui est réellement utilisé.
Quel autre argument pourrais-je faire (en plus de calmer mon nerf de TOC) pour garder l'essentiel? Je pense principalement aux références système, toute référence à un travail personnalisé apportera son lot de problèmes de compatibilité descendante. L'empreinte de la version est-elle plus importante? Compiler le temps plus longtemps?
using
s et références ne sont pas la même chose. Beaucoup de réponses ne tiennent pas compte de cela.Réponses:
Intellisense vous sera beaucoup plus utile si vous gardez
using
au minimum, et c'est un grand avantage.A part ça, je ne pense pas qu'il y ait de gain. Alors peut-être que le compilateur C # fonctionnera plus rapidement de, disons, 1%; et alors.
la source
Ctrl+.
une correction rapide "Ajouter un espace de nomsXYZ
"using
s jusqu'à ce qu'il ait compris qu'ils sont en fait inutiles, mais il ne peut le comprendre que s'il a d'abord compilé votre fichier source entier. Comme pour les références de projet, elles ne sont pas supprimées simplement parce qu'elles ne semblent pas être utilisées, car elles peuvent être utilisées de manière dynamique (non détectable au moment de la compilation).Puisqu'il est pratiquement trivial d'accomplir cela dans Visual Studio (simple clic droit), pourquoi ne pas le faire?
Ceci est cohérent avec le rasoir d' Occam , c'est tout simplement une bonne ingénierie.
En ce qui concerne les conséquences de ne pas le faire, réfléchissez à ce qui se passe si un autre développeur essaie d'ouvrir votre projet et qu'il contient une référence (inutilisée) à une bibliothèque qu'il / elle n'a pas sur son ordinateur. Maintenant, ce pauvre développeur doit comprendre pourquoi cette référence non résolue existe et que faire à ce sujet.
Si vous préférez, considérez-le en termes de règle d'or. Souhaitez-vous reprendre le développement d'un projet comportant de nombreuses références à des bibliothèques que vous n'aviez pas sur votre ordinateur et que vous ne saviez pas pourquoi elles sont là?
la source
using
les instructions sont simplement pour que le compilateur puisse référencer complètement les classes, etc. Lesusing
instructions supplémentaires n'auront aucun effet appréciable sur le temps de compilation.De plus, le runtime ne chargera pas un assembly référencé jusqu'à ce qu'il soit réellement nécessaire, donc encore une fois, je ne pense pas qu'il y ait de conséquences négatives des références inutiles.
Si vous utilisez un outil comme Reflector, la recherche et la suppression de ces bits inutiles peuvent être principalement automatisées, donc je dirais que c'est inutile de consacrer beaucoup de temps à ces activités. Par exemple, une heure ou deux de suppression manuelle des
using
relevés inutiles est plus que payante pour une licence Reflector - et il est livré avec de nombreuses autres fonctionnalités améliorant la productivité.la source
using
références non utilisées et les références non utilisées. Les deux sont très différents!En plus de ce qui précède, je suppose qu'il n'a pas encore été mentionné ici que, chaque référence nécessite un composant dans le cadre .NET ou une DLL externe. Si la référence est faite à une DLL externe, vous devrez l'avoir quand (et où) vous exécuterez le logiciel.
Modifier - Selon le commentaire valide de phoog ci-dessous: L'application fonctionnerait toujours si la DLL n'est pas utilisée et n'est pas requise pour être livrée avec l'application simplement parce qu'elle a été ajoutée aux références. Pour prendre soin des références non utilisées dans le code, vous pouvez consulter: Suppression des références inutilisées .
la source