c # использование порядка операторов пространства имен - PullRequest
3 голосов
/ 01 июля 2011

Мне показалось, что я где-то читал, что упорядочение ваших утверждений об использовании и избавление от неиспользуемых высказываний приносило какую-то выгоду в производительности ... но я не могу найти никаких доказательств или ресурсов, подтверждающих это ... есть ли правда к этому?

Ответы [ 4 ]

7 голосов
/ 01 июля 2011

Нет, оператор using для установки пространств имен не требует затрат производительности.Созданный код IL будет одинаковым независимо от порядка операторов.Единственным преимуществом будет четкость и удобочитаемость.Кроме того, удаление неиспользуемых из них ускорит время компиляции, но производительность во время выполнения не изменится.

5 голосов
/ 01 июля 2011

Из msdn,

использование директив пространства имен в одном и том же модуле компиляции или теле пространства имен не влияют друг на друга и могут быть записаны в любом порядке.

Очень много useful link вы хотели бы посетить.

2 голосов
/ 01 июля 2011

Дополнительная проблема, не упомянутая другими комментаторами: Ваши операторы использования влияют на то, что появляется в Intellisense (особенно для методов расширения). Удаление неиспользованных операторов сохранит производительность вашего Intellisense и покажет только соответствующие методы расширения.

1 голос
/ 01 июля 2011

Там не было бы.По крайней мере, не во время выполнения.Возможно, что во время сборки потребуется дополнительное время для их обработки, но это не будет заметно.Операторы using не переносятся в код IL, вместо этого у всего есть полное имя, поэтому это всего лишь время сборки.

Теперь, лично, я нажимаю клавишу "сортировать и удалять"usings "и бить его постоянно, просто потому, что он держит код чище.Но это просто обсессивно-компульсивная вещь:)

...