Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede kod eşlemeleri ile kodunuz genelinde bağımlılıkları görselleştirmeyi öğreneceksiniz.
Kod eşlemeleri nedir?
Visual Studio'da kod eşlemeleri, program kodunuzun dosyaları ve kod satırlarını okumadan nasıl bir araya topduğunu daha hızlı görmenize yardımcı olur. Bu haritalarla, kodunuzda yapısı ve bağımlılıkları, güncelleştirme ve önerilen değişikliklerin maliyetini tahmin etme dahil olmak üzere kuruluşu ve ilişkileri görebilirsiniz.
Kod için bağımlılıkları şu dillerde eşleyebilirsiniz:
Çözüm veya derlemelerde Visual C# veya Visual Basic (.dll veya .exe)
Visual C++ projelerinde, üst bilgi dosyalarında (.h veya
#includeC++) veya ikili dosyalarda yerel veya yönetilen C veya C++ koduMicrosoft Dynamics AX için .NET modüllerinden yapılan X++ projeleri ve derlemeleri
Uyarı
C# veya Visual Basic dışındaki projelerde, kod eşlemesi başlatmak veya var olan bir kod eşlemesine öğe eklemek için daha az seçenek vardır. Örneğin, bir C++ projesinin metin düzenleyicisinde bir nesneye sağ tıklayıp bir kod eşlemesine ekleyemezsiniz. Ancak Çözüm Gezgini, Sınıf Görünümü ve Nesne Tarayıcısı'ndan tek tek kod öğelerini veya dosyalarını sürükleyip bırakabilirsiniz.
Prerequisites
Visual Studio'da kod eşlemesi oluşturmak için önce Kod Eşlemesi ve Canlı Bağımlılık Doğrulama bileşenlerini yükleyin
Kod eşlemeleri oluşturmak ve düzenlemek için Visual Studio Enterprise sürümü gerekir. Ancak Visual Studio Community ve Professional sürümlerinde Enterprise sürümünde oluşturulan diyagramları açabilirsiniz ancak düzenleyemezsiniz.
Uyarı
Visual Studio Enterprise'da oluşturulan haritaları Visual Studio Professional kullanan diğer kişilerle paylaşmadan önce, haritadaki tüm öğelerin (gizli öğeler, genişletilmiş gruplar ve gruplar arası bağlantılar gibi) görünür olduğundan emin olun.
Kod haritası ekleme
Boş bir kod eşlemesi oluşturup derleme başvuruları, dosyalar ve klasörler gibi öğeleri bu haritaya sürükleyebilir veya çözümünüzün tamamı veya bir bölümü için bir kod eşlemesi oluşturabilirsiniz.
Boş bir kod eşlemesi eklemek için:
Çözüm Gezgini'nde üst düzey çözüm düğümünüzün kısayol menüsünü açın. Yeni Öğe Ekle'yi> seçin.
Yeni Öğe Ekle iletişim kutusundaki Yüklü altında Genel kategorisini seçin.
Yönlendirilmiş Grafik Belgesi(.dgml) şablonunu ve ardından Ekle'yi seçin.
İpucu
Bu şablon alfabetik olarak görünmeyebilir, bu nedenle görmüyorsanız şablon listesinin en altına kadar aşağı kaydırın.
Çözümünüzün Çözüm Öğeleri klasöründe boş bir harita görüntülenir.
Benzer şekilde, Mimari> Yeni Kod Haritası veya Dosya Yeni Dosya'yı seçerek çözümünüze eklemeden> bir>dosyası oluşturabilirsiniz.
Daha fazla bilgi edinin:
Çözümünüz için kod haritası oluşturma
Çözümünüzdeki tüm bağımlılıkları görmek için:
Menü çubuğunda Çözüm için Mimari>Kod Eşlemesi Oluştur'u seçin. Kodunuz son derlemeden bu yana değişmediyse, bunun yerine Derleme Yapmadan Çözüm için Kod Haritası Oluştur seçeneğine tıklayabilirsiniz.
En üst düzey montajlar ve bunlar arasındaki toplu bağlantıları gösteren bir harita oluşturulur. Toplama bağlantısı ne kadar genişse, o kadar fazla bağımlılık temsil eder.
Proje türü simgelerinin (Test, Web ve Telefon Projesi gibi), kod öğelerinin (Sınıflar, Yöntemler ve Özellikler gibi) ve ilişki türlerinin (Devralan Kaynak, Uygulama ve Çağrılar gibi) listesini göstermek veya gizlemek için kod eşlemesi araç çubuğundaki Gösterge düğmesini kullanın.
Bu örnek çözüm Çözüm Klasörleri (Testler ve Bileşenler), Test Projeleri, Web Projeleri ve derlemeler içerir. Varsayılan olarak, tüm kapsama ilişkileri gruplar olarak görünür ve bunu genişletip daraltabilirsiniz. Dışlar grubu, platform bağımlılıkları dahil olmak üzere çözümünüzün dışındaki her şeyi içerir. Dış derlemeler yalnızca kullanılan öğeleri gösterir. Sistem temel türleri, dağınıklığı azaltmak için varsayılan olarak haritada gizlenir.
Haritanın detayına gitmek için projeleri ve derlemeleri temsil eden grupları genişletin. CTRL+A tuşlarına basarak tüm düğümleri seçip ardından kısayol menüsünden Gruplandır, Genişlet'i seçerek her şeyi genişletebilirsiniz.
Ancak, bu büyük bir çözüm için yararlı olmayabilir. Aslında, karmaşık çözümler için bellek sınırlamaları tüm grupları genişletmenizi engelleyebilir. Bunun yerine, tek bir düğümün içini görmek istiyorsanız, onu genişletin. Fare işaretçinizi düğümün üzerine getirin ve göründüğünde köşeli çift ayraç (aşağı ok) öğesine tıklayın.
İsterseniz, öğeyi seçip artı tuşuna (+ ) basarak da klavyeyi kullanabilirsiniz. Daha derin kod düzeylerini keşfetmek için ad alanları, türler ve üyeler için aynı işlemi yapın.
İpucu
Fare, klavye ve dokunma kullanarak kod haritalarıyla çalışma hakkında daha fazla ayrıntı için bkz. Kod haritalarına göz atma ve yeniden düzenleme.
Haritayı basitleştirmek ve tek tek parçalara odaklanmak için kod haritası araç çubuğunda Filtreler'i seçin ve yalnızca ilgilendiğiniz düğüm ve bağlantı türlerini seçin. Örneğin, tüm Çözüm Klasörü ve Derleme kapsayıcılarını gizleyebilirsiniz.
Ayrıca, temel alınan çözüm kodunu etkilemeden tek tek grupları ve öğeleri haritadan gizleyerek veya kaldırarak haritayı basitleştirebilirsiniz.
Öğeler arasındaki ilişkileri görmek için bunları haritada seçin. Bağlantıların renkleri, Gösterge bölmesinde gösterildiği gibi ilişki türlerini gösterir.
Bu örnekte mor bağlantılar çağrılar, noktalı bağlantılar başvurular ve açık mavi bağlantılar ise alan erişimidir. Yeşil bağlantılar devralma olabilir veya birden fazla ilişki türünü (veya kategoriyi) gösteren toplu bağlantılar olabilir.
İpucu
Yeşil bir bağlantı görürseniz, bu yalnızca bir devralma ilişkisi olduğu anlamına gelmez. Metot çağrıları da olabilir, ancak bunlar devralma ilişkisi nedeniyle gizlenir. Belirli bağlantı türlerini görmek için Filtreler bölmesindeki onay kutularını kullanarak ilgilenmediğiniz türleri gizleyin.
Bir öğe veya bağlantı hakkında daha fazla bilgi edinmek için, araç ipucu görünene kadar işaretçiyi üzerine taşıyın. Bu, bir kod öğesinin veya bağlantının temsil ettiği kategorilerin ayrıntılarını gösterir.
Toplama bağlantısıyla temsil edilen öğeleri ve bağımlılıkları incelemek için önce bağlantıyı seçin ve ardından kısayol menüsünü açın. Katkıda Bulunan Bağlantıları Göster'i (veya Yeni Kod Haritasında Katkıda Bulunan Bağlantıları Göster)'i seçin. Bu işlem, bağlantının her iki ucundaki grupları genişletir ve yalnızca bağlantıya katılan öğeleri ve bağımlılıkları gösterir.
Haritanın belirli bölümlerine odaklanmak için ilgilenmediğiniz öğeleri kaldırmaya devam edebilirsiniz. Örneğin, sınıf ve üye görünümünde detaya gitmek için Filtreler bölmesindeki tüm ad alanı düğümlerini filtrelemeniz yeterlidir.
Karmaşık bir çözüm haritasına odaklanmanın bir diğer yolu da mevcut bir haritadan seçilen öğeleri içeren yeni bir harita oluşturmaktır. Odaklanmak istediğiniz öğeleri seçerken Ctrl tuşunu basılı tutun, kısayol menüsünü açın ve Seçimden Yeni Grafik'i seçin.
İçeren bağlam yeni haritaya taşınır. Filtreler bölmesini kullanarak görmek istemediğiniz Çözüm Klasörleri'ni ve diğer kapsayıcıları gizleyin.
İlişkileri görüntülemek için grupları genişletin ve haritadaki öğeleri seçin.
Ayrıca bkz:
- Kod eşlemelerine göz atma ve bunları yeniden düzenleme
- DGML dosyalarını düzenleyerek kod eşlemelerini özelleştirme
- Çözümleyici çalıştırarak kodunuzdaki olası sorunları bulma
Bağımlılıkları görüntüleme
Bekleyen değişiklikleri olan bazı dosyalarda gerçekleştirmek için bir kod gözden geçirmeniz olduğunu varsayalım. Bu değişikliklerdeki bağımlılıkları görmek için bu dosyalardan bir kod eşlemesi oluşturabilirsiniz.
Çözüm Gezgini, Sınıf Görünümü veya Nesne Tarayıcısı'ndan öğeleri yeni veya mevcut bir kod eşlemesine sürükleyin. Öğelerinizin üst hiyerarşisini eklemek için, öğeleri sürüklerken Ctrl tuşunu basılı tutun veya varsayılan eylemi belirtmek için kod eşlemesi araç çubuğundaki Üst Öğeleri Ekle düğmesini kullanın. Derleme dosyalarını Windows Gezgini gibi Visual Studio dışından da sürükleyebilirsiniz.
Uyarı
Windows Phone veya Microsoft Store gibi birden çok uygulama arasında paylaşılan bir projeden öğeler eklediğinizde, bu öğeler o anda etkin olan uygulama projesiyle haritada görünür. Bağlamı başka bir uygulama projesiyle değiştirir ve paylaşılan projeden daha fazla öğe eklerseniz, bu öğeler artık yeni etkin uygulama projesiyle birlikte görünür. Haritadaki bir öğeyle gerçekleştirdiğiniz işlemler yalnızca aynı bağlamı paylaşan öğeler için geçerlidir.
Harita, seçili öğeleri içeren derlemeleri içinde gösterir.
Öğeleri keşfetmek için onları genişletin. Fare işaretçisini öğenin üzerine getirin, ardından göründüğünde köşeli çift ayraç (aşağı ok) simgesine tıklayın.
Tüm öğeleri genişletmek için , Ctrl+A kullanarak öğeleri seçin, ardından haritanın kısayol menüsünü açın ve Grup>Genişlet'i seçin. Ancak, tüm grupların genişletilmesi kullanılamayan bir harita veya bellek sorunları oluşturuyorsa bu seçenek kullanılamaz.
İlgilendiğiniz öğeleri sınıfa ve gerekirse üye düzeyine kadar genişletmeye devam edin.
Kodda yer alan ancak haritada görünmeyen üyeleri görmek için, grubun sol üst köşesindeki Alt Öğeleri Yeniden Getir simgesine
tıklayın.Haritadaki öğelerle ilgili daha fazla öğe görmek için birini seçin ve kod haritası araç çubuğunda İlişkilileri Göster'i seçin, ardından haritaya eklenecek ilgili öğelerin türünü seçin. Alternatif olarak, bir veya daha fazla öğe seçin, kısayol menüsünü açın ve ardından haritaya eklenecek ilgili öğelerin türü için Göster seçeneğini belirleyin. Örneğin:
Derleme için şunları seçin:
Option Açıklama Bu Başvuruların Gösterdiği Derlemeler Bu derlemenin referans verdiği derlemeleri ekleyin. Dış derlemeler Harici Bileşenler grubunda görünür. Bunu Referans Veren Derlemeleri Göster Çözümde bu derlemeye başvuran derlemeler ekleyin. Bir ad alanı için, eğer görünür değilse İçeren Derlemeyi Göster'i seçin.
Sınıf veya arabirim için seçim yapın:
Option Açıklama Temel Türleri Göster Bir sınıf için temel sınıfı ve uygulanan arabirimleri ekleyin.
Arabirim için temel arabirimleri ekleyin.Türetilmiş Türleri Göster Bir sınıf için türetilmiş sınıfları ekleyin.
Arabirim için türetilmiş arabirimleri ve uygulayan sınıfları veya yapıları ekleyin.Bunun Referans Verdiği Türleri Göster Bu sınıfın kullandığı tüm sınıfları ve üyelerini ekleyin. Buna Referans Veren Türleri Göster Bu sınıfı kullanan tüm sınıfları ve üyelerini ekleyin. İçeren Ad Alanını Göster Ana ad alanını ekleyin. Ad Alanı ve Derleme İçereni Göster Ana kapsayıcı hiyerarşisini ekleyin. Tüm Temel Türleri Göster Temel sınıfı veya arabirim hiyerarşisini özyinelemeli olarak ekleyin. Türetilmiş Tüm Türleri Göster Bir sınıf için türetilmiş tüm sınıfları özyinelemeli olarak ekleyin.
Bir arabirim için tüm türetilmiş arabirimleri ekleyin ve sınıfları veya yapıları özyinelemeli olarak uygulayın.Bir yöntem için şunları seçin:
Option Açıklama Bu Çağrıların Yöntemlerini Göster Bu yöntemin çağırdığını yöntemleri ekleyin. Bu Referansların Alanlarını Göster Bu yöntemin başvurduğunu alanları ekleyin. İçeren Türü Göster Üst türü ekleyin. İçeren Türü, Ad Alanını ve Derlemeyi Göster Ana kapsayıcı hiyerarşisini ekleyin. Geçersiz Kılınan Yöntemleri Göster Diğer yöntemleri geçersiz kılan veya arabirimin yöntemini uygulayan bir yöntem için geçersiz kılınan temel sınıflara tüm soyut veya sanal yöntemleri ve varsa arabirimin uygulanan yöntemini ekleyin. Bir alan veya özellik için şunları seçin:
Option Açıklama İçeren Türü Göster Üst türü ekleyin. İçeren Türü, Ad Alanını ve Derlemeyi Göster Ana kapsayıcı hiyerarşisini ekleyin.
Harita ilişkileri gösterir. Bu örnekte harita,
Findyöntemi tarafından çağrılan yöntemleri ve bunların çözümdeki ya da harici konumlarını gösterir.Haritayı basitleştirmek ve tek tek parçalara odaklanmak için kod haritası araç çubuğunda Filtreler'i seçin ve yalnızca ilgilendiğiniz düğüm ve bağlantı türlerini seçin. Örneğin, Çözüm Klasörleri, Derlemeler ve Ad Alanları'nın görüntülenmesini kapatın.
İlgili içerik
- Kod eşlemelerini paylaşma
- C++ için kod eşlemeleri oluşturma
- Kod haritası performansını geliştirme
- Uygulamalarınızın hatalarını ayıklamak için kod eşlemelerini kullanma
- Hata ayıklama sırasında çağrı yığınındaki eşleme yöntemleri
- Kod eşleme çözümleyicilerini kullanarak olası sorunları bulma
- Kod eşlemelerine göz atma ve bunları yeniden düzenleme
- DGML dosyalarını düzenleyerek kod eşlemelerini özelleştirme