Frage

habe ich eine ziemlich komplexe Anwendung, die in mehrere Komponenten aufgebrochen wurde. Jede Komponente hat eine Lösung Datei, die eine Reihe von Projekten enthält. Also Ich mag daran denken als eine Komponente mehrere Projekte hat / dlls darin. Es gibt auch eine „gemeinsame“ Komponente. Alle anderen Komponenten sind abhängig von „common“. So eine Kompilierung geht so: "nant component1.compile" wird „gemeinsame“ kompilieren und dann Kompilierung Komponente1 seit Komponente1 auf „gemeinsamen“ abhängt. Im Laufe der Zeit „gemeinsam“ ist ziemlich groß geworden. Ich bin ziemlich sicher, kann es in einigen kleineren Komponenten aufgeteilt werden. Dann müssen Komponenten nur auf einige dieser kleineren, aufgebrochen „gemeinsam“ abhängen. Dies würde hoffentlich schneiden für die verschiedenen Komponenten auf der Kompilierung nach unten.

So Frage: Ich mag die Abhängigkeit zwischen allen den verschiedenen Projekten in der Anwendung sichtbar zu machen, während auch, welche Komponente das Projekt Tagging gehört. Wie würden Sie das tun?

War es hilfreich?

Lösung

Das Werkzeug NDepend schlägt eine Abhängigkeitsgraphen mit einer Abhängigkeitsmatrix gekoppelt. Standardmäßig finden Sie eine Abhängigkeitsgraphen von .NET-Assemblies bekommen, und es ist nicht auf Baugruppen nur eine VS-Lösung beschränkt. NDepend ist integriert in VS 2017, 2015, 2013, 2012, 2010 und es jede Art von Grafik auf Ihrem Code einschließlich zeigen kann:

  • Abhängigkeiten zwischen Baugruppen
  • Methodenaufruf Graph,
  • Abhängigkeiten von Namensräumen in einem VS-Projekt
  • Abhängigkeiten von Typen innerhalb eines Namespace
  • Klassen Vererbungsgraphen,
  • Graph, die Klassen Kopplung zwischen Komponenten 2

etc ...

Das ist alles erklärt hier .

NDepend schlägt auch eine Abhängigkeitsstruktur Matrix (DSM) und ein Weg, um Abfrage Abhängigkeiten mit C # LINQ-Abfragen .

Andere Tipps

Ich würde versuchen, es in ein UML-Tool importieren, die die Abhängigkeit Diagramm zwischen den Modulen für mich machen könnten.

Es gibt mehr auf dem Markt, sowohl kommerziell als auch Open Source. Holen Sie sich das eine, die Ihnen die Möglichkeit für Ihr Budget gibt.

Wenn Sie auf OK mit Montageebene Informationen sind dann sollten Sie sehen Graph Add-in zu einem beliebten Werkzeug Reflector . Es bietet Montage & Klassenstufe Abhängigkeitsgraphen.

verstehen wurde heute Morgen zu mir vorgeschlagen (:

http://www.scitools.com/

aber ehrlich gesagt kann ich nicht einen richtigen Bericht darüber geben, da es zu teuer für mich ist ...

Haben Sie einen Blick auf meine freie DSM-Plugin für .NET Reflector Herunterladen von www.tom-carter.net

Es erlaubt zwei verschiedene Sichten auf Ihren Abhängigkeiten: a. Bereitstellungsmodell die Abhängigkeiten zwischen Baugruppen und ein Architekturmodell zu finden Abhängigkeiten zwischen verschiedenen Arten zeigen

Wenn es nicht visuell nicht liefert die Informationen, um Ihre suchen, können Sie das Modell in XML speichern und Ihr eigenes Skript auf den Daten ausgeführt werden.

Der Vorteil einer Abhängigkeitsmatrix ist, dass sein viel einfache Abhängigkeiten zu analysieren visuell als Box und Liniendiagramme

Wenn Sie jetzt mehr Hilfe lassen Sie mich brauchen

[Update] Dieses Plugin ist jetzt in Form eines Visual Studio Add-In

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top