2010-08-29 24 views
10

Kaynak kodu analiz eden ve fonksiyonlar arasındaki tüm bağlantıları grafik olarak gösteren bir çeşit uygulama var mı?C# - Fonksiyonlar arasındaki tüm bağımlılıkları göstermek için uygulama?

ben üzerinde çalıştığım bir eski kod için lazım - O, büyük fonksiyonel ve kötü yazılmış bulunuyor ...

+1

Görsel stüdyo 2010'a geçebilir misiniz? Daha sonra, –

+0

@Rune FS: +1 içindeki araçlarda bulunan araçları kullanın. Bunun meşru bir cevabı olduğunu düşünüyorum. Başkalarının kabul edip etmeyeceğinden emin değilim. VS'de bu araçları nerede bulacağınızdan bahsetmek isteyebilirsiniz. –

+1

[C# Call Graph Generation Tool] 'un olası kopyası (http://stackoverflow.com/questions/793685/c-call-graph-generation-tool) – Timwi

cevap

2

NDepend denilen yeni bir özelliktir. Biraz geliştirmeme izin ver. İlk olarak, bir CQL sorgusu olan Graph'ı sorgulayabilirsiniz; ikinci olarak sorgu sonucunu Bağımlılık Grafiği veya Bağımlılık Matrisi'ne aktarabilirsiniz. Somut olarak aşağıda, NUnit 2.4.8'deki AppDomain sınıfının yöntemini arayanlar için bir yöntem, bir alan, bir ad alanı olabilir. Bu menü, NDepend VS eklentisi sayesinde Visual Studio'da da görünebilir.

alt text

Sonra CQL sorgu bizim için oluşturulur, biz 30 yöntemler arayan grafikte eşleştirilir görüyoruz. Biz çıkartır grafik

alt text (Bu grafikte here büyük bir versiyon resme bakın) olan burada grafiksel grafiğin oa yöntemlerin hese setini ihracat seçeneği ...

alt text

var ... ve

+0

Detaylı açıklama için teşekkürler! – Yossale

7

NDepend :(tam olarak bu ve daha başka şeyler yapmak (kod ölçümlerini ...)

Visual Studio 2010 Ultimate yılında
0

.Net Reflector çok zarif - Bu almak için bunu birkaç kez kullandım çeşit bilgi. En az bir tanesi bağımlılık diyagramları üreten bir dizi eklenti vardır. Ayrıca, VS.Net 2008 veya daha yüksek sürümlerinde, "Tüm Referansları Bul" u sağ tıklatmanız yararlı olabilir.

0

ReSharper, yönteminizi ve yönteminizi çağıran yöntemlerin grafiğini görmenizi sağlayan özellikler sağlar. (Giden ve Gelen aramalar)

Bu calling graph iyi gerçekten olarak öne madgnome yönetebilir "Call Tracking"

İlgili konular