Какова стоимость неиспользованных сборочных ссылок? - PullRequest
8 голосов
/ 12 ноября 2010

Мне было интересно, каковы различные затраты на ссылки на сборки в .NET-решении. Меня интересуют как технические, так и организационные расходы.

Некоторые примеры:

  • Неиспользуемая сборка содержит дополнительные байты для отправки (более длительные загрузки, потерянное пространство)
  • Неиспользуемая сборка может содержать уязвимую дыру в безопасности
  • Неиспользованная сборка может повлечь дополнительные расходы при запуске
  • Неиспользованная сборка может повлечь дополнительные расходы на проверку (как этот вопрос)
  • Неиспользуемая сборка может запутать нового разработчика

Ответы [ 3 ]

11 голосов
/ 12 ноября 2010

Если вы ссылаетесь на сборку в проекте, но фактически не используете какие-либо типы в этой сборке, неиспользуемая сборка не будет частью вашего конечного продукта. Ссылка удаляется во время компиляции.

Единственные «накладные расходы» на ссылки на неиспользуемые сборки - это во время разработки, когда ссылки на многие неиспользуемые сборки могут сбить с толку разработчика о том, какие зависимости есть у проекта. Каждая новая сборка в вашем проекте также создаст некоторые накладные расходы для IntelliSense и компилятора, но в большинстве случаев вы не заметите.

ReSharper имеет функцию для анализа, не используется ли указанная сборка.

1 голос
/ 12 ноября 2010

По моему мнению, организационные издержки для меня (и моих коллег) даже на думать о неиспользованных ссылках (зачем нам здесь XML?) - достаточная мотивация для их удаления. Следовательно, я никогда не рассматривал влияние на развертывание или производительность.

0 голосов
/ 12 ноября 2010

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

...