12 votes

L'utilisation des espaces de noms affecte-t-elle les performances ou le temps de compilation ?

Si je place toutes les classes d'un projet dans le même espace de nom, toutes les classes sont disponibles partout dans le projet. Mais si j'utilise des espaces de noms différents, toutes les classes ne sont pas disponibles partout. J'obtiens une restriction.

L'utilisation des espaces de noms affecte-t-elle le temps de compilation d'une manière ou d'une autre ? Puisque le compilateur a moins de classes dans chaque espace de noms et que tous les espaces de noms ne sont pas utilisés tout le temps, il peut avoir un peu moins de difficultés à trouver les bonnes classes.

L'utilisation des espaces de noms affectera-t-elle les performances des applications ?

14voto

Jon Skeet Points 692016

Cela n'affectera pas les performances en temps d'exécution.

Cela peut affecter les performances de compilation, mais je doute que cela soit significatif, et je ne voudrais même pas prédire de quelle manière cela l'affectera. (Avez-vous un problème avec les longs temps de compilation ? Si c'est le cas, vous pouvez l'essayer et mesurer la différence... sinon vous ne connaîtrez pas vraiment l'effet. Si vous n'avez pas de problème, cela n'a pas vraiment d'importance).

5voto

Alexander Pacha Points 869

Je suis tout à fait sûr que le fait de mettre les classes dans des espaces de noms n'a pas d'effet significatif sur le temps de compilation.

Mais attention, vous risquez de perdre la structure logique de votre projet si vous placez toutes les classes dans le même espace de noms.

Je (et le Resharper) suggère d'utiliser des espaces de noms qui correspondent à l'emplacement du fichier (qui correspond à la structure du projet).

2voto

Luis Filipe Points 3302

Vous devez utiliser les espaces de noms en fonction de votre logique et de la facilité de lecture humaine et non pour des questions de performance.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X