Wie hoch sind die Kosten für nicht verwendete Baugruppenreferenzen?

8

Ich habe mich gefragt, was die verschiedenen Kosten von referenzierenden Assemblies in einer .NET-Lösung sind. Ich bin an technischen und organisatorischen Kosten interessiert.

Einige Beispiele:

  • Die unbenutzte Assembly enthält zusätzliche zu versendende Bytes (längere Downloads, verschwendeter Speicherplatz)
  • Die nicht verwendete Assembly enthält möglicherweise eine ausnutzbare Sicherheitslücke
  • Die nicht verwendete Assembly kann zusätzliche Startkosten verursachen
  • Die ungenutzte Assembly könnte zusätzliche Überprüfungskosten verursachen (wie diese Frage)
  • Die unbenutzte Assembly könnte einen neuen Entwickler verwirren
David Schmitt 12.11.2010, 08:13
quelle

3 Antworten

11

Wenn Sie eine Assembly in einem Projekt referenzieren, aber tatsächlich keine Typen in dieser Assembly verwenden, ist die nicht verwendete Assembly nicht Teil Ihres endgültigen Produkts. Die Referenz wird zur Kompilierzeit entfernt.

Der einzige "Overhead" beim Verweisen auf nicht verwendete Assemblys ist während der Entwicklung, wo die Referenzierung vieler nicht verwendeter Assemblys den Entwickler über die Abhängigkeiten des Projekts verwirren kann. Jede neue Assembly in Ihrem Projekt erzeugt auch einen gewissen Mehraufwand für IntelliSense und den Compiler, aber in den meisten Fällen werden Sie dies nicht bemerken.

ReSharper hat eine Funktion, um zu analysieren, ob eine referenzierte Assembly nicht verwendet wird.

    
Martin Liversage 12.11.2010, 08:25
quelle
1

Meiner Meinung nach ist der organisatorische Aufwand für mich (und meine Mitarbeiter), selbst zu denken über nicht verwendete Referenzen (warum brauchen wir XML hier?) genug Motivation, um sie zu entfernen. Folglich habe ich nie die Auswirkungen auf die Bereitstellung oder Leistung berücksichtigt.

    
Marijn 12.11.2010 08:34
quelle
0

Wenn Sie nichts aus der Assembly verwenden, werden sie beim Kompilieren entfernt, so dass die Kosten nichts sind.

    
Robert MacLean 12.11.2010 08:26
quelle