Aracılığıyla paylaş


Kodunuz aracılığıyla bağımlılık diyagramları oluşturma

Yazılım sisteminizin üst düzey mantıksal mimarisini görselleştirmek için Visual Studio'da bir bağımlılık diyagramı oluşturun. Kodunuzun bu tasarımla tutarlı kaldığından emin olmak için kodunuzu bir bağımlılık diyagramıyla doğrulayın. Visual C# ve Visual Basic projeleri için bağımlılık diyagramları oluşturabilirsiniz. Hangi Visual Studio sürümlerinin bu özelliği desteklediğini görmek için bkz . Mimari ve modelleme araçları için sürüm desteği.

Bağımlılık diyagramı oluşturma

Bağımlılık diyagramı, Visual Studio çözüm öğelerini katmanlar olarak adlandırılan mantıksal, soyut gruplar halinde düzenlemenize olanak tanır. Bu yapıların gerçekleştirdiği temel görevleri veya sistemin ana bileşenlerini açıklamak için katmanları kullanabilirsiniz.

Her katman, daha ayrıntılı görevleri açıklayan başka katmanlar içerebilir. Katmanlar arasında istenen veya var olan bağımlılıkları da belirtebilirsiniz. Ok olarak temsil edilen bu bağımlılıklar, diğer katmanlar tarafından temsil edilen işlevselliği kullanan veya kullanabilen katmanları gösterir. Kodunun mimari denetimini sağlamak için diyagram üzerinde hedeflenen bağımlılıkları gösterin ve ardından kodu diyagrama karşı doğrulayın.

Video: Mimari bağımlılıklarınızı gerçek zamanlı olarak doğrulama

Bağımlılık diyagramı oluşturma

Bağımlılık diyagramı oluşturmadan önce çözümünüzün bir modelleme projesi olduğundan emin olun.

Önemli

Mevcut bağımlılık diyagramını bir modelleme projesinden başka bir modelleme projesine veya çözümdeki başka bir yere eklemeyin, sürüklemeyin veya kopyalamayın. Bu, diyagramı değiştirseniz bile orijinal diyagramdan yapılan başvuruları korur. Bu, katman doğrulamasının doğru çalışmasını da engeller ve siz diyagramı açmaya çalışırken kayıp öğeler veya başka hatalar gibi diğer sorunlara da neden olabilir.

Bunun yerine modelleme projesine yeni bir bağımlılık diyagramı ekleyin. Öğeleri kaynak diyagramdan yeni diyagrama kopyalayın. Hem modelleme projesini hem de yeni bağımlılık diyagramını kaydedin.

Modelleme projesine yeni bağımlılık diyagramı ekleme

Not

.NET Core projeleri için bağımlılık diyagramları, Visual Studio 2019 sürüm 16.2'den itibaren desteklenir.

  1. Mimari menüsünde Yeni Bağımlılık Diyagramı'nı seçin.

  2. Şablonlar'ın altında bağımlılık diyagramını seçin.

  3. Diyagrama ad verin.

  4. Modelleme Projesine Ekle'de, çözümünüzde var olan bir modelleme projesine göz atın ve bunu seçin.

    -veya-

    Çözüme yeni bir modelleme projesi eklemek için Yeni modelleme projesi oluştur'u seçin.

    Not

    Bağımlılık diyagramı bir modelleme projesi içinde bulunmalıdır. Bununla birlikte, bunu çözümün herhangi bir yerindeki öğelere bağlayabilirsiniz.

  5. Modelleme projesini ve bağımlılık diyagramını her ikisini de kaydettiğinizden emin olun.

Kod Eşlemesi'nden sürükleyip bırakın veya kopyalayıp yapıştırın

  1. Mimari menüsünü kullanarak çözüm için bir Kod Haritası oluşturun.

  2. Yalnızca ürün kodunda bağımlılıkları zorunlu kılmak istiyorsanız çözüm klasörlerini ve "Test Varlıkları" öğesini kaldırmak için Kod Eşlemesi filtresi uygulamayı göz önünde bulundurun.

  3. Oluşturulan Kod Eşlemesinde, "Dış" düğümünü kaldırın veya ad alanı bağımlılıklarını zorlamak isteyip istemediğinize bağlı olarak dış derlemeleri gösterecek şekilde genişletin. Kod Eşlemesi'nden gerekli olmayan derlemeleri silin.

  4. Mimari menüsünü kullanarak çözüm için yeni bir Bağımlılık Diyagramı oluşturun.

  5. Kod Haritası'nda tüm düğümleri seçin (Ctrl + A kullanın veya tıklamadan, sürüklemeden ve bırakmadan önce Shift tuşuna basarak lastik bant seçimini kullanın).

  6. Seçili öğeleri yeni Bağımlılık Doğrulama diyagramına sürükleyip bırakın veya kopyalayıp yapıştırın.

  7. Bu, geçerli uygulama mimarisini gösterir. Mimarinin ne olmasını istediğinize karar verin ve bağımlılık diyagramını uygun şekilde değiştirin.

Kod Eşlemesinden oluşturulan bağımlılık diyagramı

Yapıtlardan katman oluşturma

Visual Studio çözüm öğelerinden projeler, kod dosyaları, ad alanları, sınıflar ve yöntemler gibi katmanlar oluşturabilirsiniz. Bu, katmanlar ve öğeler arasında otomatik olarak bağlantılar oluşturarak bunları katman doğrulama işlemine dahil eder.

Word belgeleri veya PowerPoint sunuları gibi doğrulamayı desteklemeyen öğelere katmanları bağlayabilirsiniz. Bu, bir katmanı belirtimler veya planlarla ilişkilendirmenizi sağlar. Katmanları birden fazla uygulama arasında paylaşılan projelerdeki dosyalara da bağlayabilirsiniz, ancak doğrulama işlemi "Katman 1" ve "Katman 2" gibi genel adlarla görünen bu katmanları içermez.

Bağlantılı bir öğenin doğrulamayı destekleyip desteklemediğini görmek için Katman Gezgini'ni açın ve öğenin Doğrulamayı Destekler özelliğini inceleyin. Bkz . Yapıt bağlantılarını yönetme.

İşlem Buradaki adımları izleyin
Tek bir yapı için katman oluşturma
  1. Öğeyi şu kaynaklardan bağımlılık diyagramına sürükleyin:
    • Çözüm Gezgini
      Örneğin, dosyaları veya projeleri sürükleyebilirsiniz.
    • Kod eşlemeleri
      Bkz. Çözümlerinizde bağımlılıkları eşleme ve Uygulamalarınızın hatalarını ayıklamak için kod eşlemelerini kullanma.
    • Sınıf Görünümü veya Nesne Tarayıcısı
    Katman, diyagramda görünür ve yapıya bağlanır.
  2. İlişkili kodun veya yapıların sorumluluklarını yansıtmak için katmanı yeniden adlandırın.

Önemli: İkili dosyaların bağımlılık diyagramına sürüklenmesi, başvurularını modelleme projesine otomatik olarak eklemez. Doğrulamak istediğiniz ikili dosyaları modelleme projesine el ile ekleyin. Modelleme projesine ikili dosyalar eklemek için
  1. Çözüm Gezgini'da modelleme projesinin kısayol menüsünü açın ve varolan öğeyi ekle'yi seçin.
  2. Var Olan Öğe Ekle iletişim kutusunda ikili dosyalara göz atın, bunları seçin ve ardından Tamam'ı seçin. İkili dosyalar modelleme projesinde görünür.
  3. Çözüm Gezgini, eklediğiniz ikili dosyayı seçin ve ardından Özellikler penceresini açmak için F4 tuşuna basın.
  4. Her ikili dosyada Derleme Eylemi özelliğini Doğrula olarak ayarlayın.
Seçilen tüm yapılar için tek bir katman oluşturma Tüm yapıtları aynı anda bağımlılık diyagramına sürükleyin.

Katman diyagramda görünür ve tüm yapılara bağlıdır.
Seçilen her yapı için bir katman oluşturma Tüm yapıtları aynı anda bağımlılık diyagramına sürüklerken SHIFT tuşunu basılı tutun.
Not: Bir öğe aralığını seçmek için SHIFT tuşunu kullanırsanız, yapıtları seçtikten sonra anahtarı bırakın. Yapıları diyagrama sürüklerken tuşu tekrar basılı tutun.

Katman her yapı için diyagramda görünür ve her yapıya bağlanır.
Katmana yapı ekleme Yapıyı katmana sürükleyin.
Bağlantısız bir katman oluşturma Araç Kutusu'nda Bağımlılık Diyagramı bölümünü genişletin ve bağımlılık diyagramına bir Katman sürükleyin.

Çoklu katman eklemek için araca çift tıklayın. İşiniz bittiğinde İşaretçi aracını seçin veya ESC tuşuna basın.

- veya -

Bağımlılık diyagramının kısayol menüsünü açın, Ekle'yi ve ardından Katman'ı seçin.
İç içe katmanlar oluşturma Varolan katmanı başka bir katmanın üzerine sürükleyin.

- veya -

Katmanın kısayol menüsünü açın, Ekle'yi ve ardından Katman'ı seçin.
Varolan iki veya daha fazla katmanı içeren yeni bir katman oluşturma Katmanları seçin, seçiminizin kısayol menüsünü açın ve ardından Gruplandır'ı seçin.
Katmanın rengini değiştirme Color özelliğini istediğiniz renge ayarlayın.
Bir katmanla ilişkilendirilmiş yapıtların belirtilen ad alanlarına ait olmaması gerektiğini belirtin Katmanın Yasak Ad Alanları özelliğine ad alanlarını yazın. Ad alanlarını ayırmak için noktalı virgül (;) kullanın.
Bir katmanla ilişkilendirilmiş yapıtların belirtilen ad alanlarına bağımlı olmadığını belirtin Katmanın Yasak Ad Alanı Bağımlılıkları özelliğine ad alanlarını yazın. Ad alanlarını ayırmak için noktalı virgül (;) kullanın.
Bir katman ile ilişkili yapıların belirli ad alanlarından birine ait olması gerektiğini belirtme Katmanın Gerekli Ad Alanları özelliğine ad alanını yazın. Ad alanlarını ayırmak için noktalı virgül (;) kullanın.

Bir katmandaki sayı, katmana bağlı olan yapıların sayısını gösterir. Ancak, bu sayıyı okurken şunları unutmayın:

  • Katman başka yapıtlar içeren bir yapıta bağlanıyorsa ancak katman doğrudan diğer yapıtlara bağlanmıyorsa, sayı yalnızca bağlantılı yapıtı içerir. Bununla birlikte, diğer yapılar katman doğrulanırken analiz için alınır.

    Örneğin, bir katman tek bir ad alanına bağlanırsa, ad alanı sınıflar içerse bile, bağlı yapıların sayısı 1'dir. Katmanın ad alanındaki her bir sınıfa da bağlantıları bulunuyorsa, sayı bağlantılı sınıfları da içerecektir.

  • Katman yapıtlara bağlı başka katmanlar içeriyorsa, kapsayıcı katmanındaki sayı bu yapıtları içermese bile kapsayıcı katmanı bu yapıtlara da bağlanır.

Katmanlar ve yapıtlar arasındaki bağlantıları yönetme

  1. Bağımlılık diyagramında katmanın kısayol menüsünü açın ve bağlantıları görüntüle'yi seçin.

    Katman Gezgini seçili katman için yapıt bağlantılarını gösterir.

  2. Bu bağlantıları yönetmek için aşağıdaki görevleri kullanın.

İşlem Katman Gezgini'nde
Katman ve yapı arasındaki bağlantıyı silme Yapıt bağlantısının kısayol menüsünü açın ve sil'i seçin.
Bağlantıyı bir katmandan diğerine taşıma Yapı bağlantısını diyagramda varolan bir katmana sürükleyin.

- veya -

1. Yapıt bağlantısının kısayol menüsünü açın ve kes'i seçin.
2. Bağımlılık diyagramında, katmanın kısayol menüsünü açın ve yapıştır'ı seçin.
Bağlantıyı bir katmandan diğerine kopyalama 1. Yapıt bağlantısının kısayol menüsünü açın ve kopyala'yı seçin.
2. Bağımlılık diyagramında, katmanın kısayol menüsünü açın ve yapıştır'ı seçin.
Varolan yapı bağlantısından yeni bir katman oluşturma Yapı bağlantısını diyagramdaki boş bir alana sürükleyin.
Bağlı yapıtın bağımlılık diyagramında doğrulamayı desteklediğini doğrulayın. Yapıt bağlantısının Doğrulamayı Destekler sütununa bakın.

Mevcut bağımlılıklara ters mühendislik uygulama

Bir bağımlılık, bir katman ile ilişkili yapının başka bir katman ile ilişkili bir yapıya başvurusu olduğu yerde var olur. Örneğin, bir katmandaki sınıf başka bir katmanda sınıfı olan değişkeni bildirir. Diyagramdaki katmanlara bağlanmış yapılar için varolan bağımlılıklara ters mühendislik uygulayabilirsiniz.

Not

Bağımlılıklar, belirli yapıt türleri için tersine mühendislik uygulanamaz. Örneğin, hiçbir bağımlılıkta metin dosyasına bağlı katmandan veya katmana ters mühendislik uygulanmaz. Ters mühendislik yapabileceğiniz bağımlılıkları olan yapıtları görmek için, bir veya birden çok katmanın kısayol menüsünü açın ve bağlantıları görüntüle'yi seçin. Katman Gezgini'nde Doğrulamayı Destekler sütununu inceleyin. Bağımlılıklar, bu sütunda False olarak gösterilen yapıtlar için tersine mühendislik uygulanamaz.

  • Bir veya birden çok katman seçin, seçili katmanın kısayol menüsünü açın ve bağımlılık oluştur'u seçin.

    Mevcut olmaması gereken bazı bağımlılıklar görürseniz, bu bağımlılıkları hedeflenen tasarımla uyumlu hale getirmek için düzenleyebilirsiniz.

Amaçlanan tasarımı göstermek için katmanları ve bağımlılıkları düzenleme

Sisteminizde veya hedeflenen mimaride yapmayı planladığınız değişiklikleri açıklamak için bağımlılık diyagramını düzenleyin:

İşlem Bu adımları gerçekleştirin
Bağımlılık yönünü değiştirme veya kısıtlama Direction özelliğini ayarlayın.
Yeni bağımlılıklar oluşturma Bağımlılık ve Çift Yönlü Bağımlılık araçlarını kullanın.

Çoklu bağımlılıklar çizmek için araca çift tıklayın. İşiniz bittiğinde İşaretçi aracını seçin veya ESC tuşuna basın.
Bir katmanla ilişkilendirilmiş yapıtların belirtilen ad alanlarına bağımlı olmadığını belirtin Katmanın Yasak Ad Alanı Bağımlılıkları özelliğine ad alanlarını yazın. Ad alanlarını ayırmak için noktalı virgül (;) kullanın.
Bir katman ile ilişkili yapıların belirli ad alanlarına ait olmaması gerektiğini belirtme Katmanın Yasak Ad Alanları özelliğine ad alanlarını yazın. Ad alanlarını ayırmak için noktalı virgül (;) kullanın.
Bir katman ile ilişkili yapıların belirli ad alanlarından birine ait olması gerektiğini belirtme Katmanın Gerekli Ad Alanları özelliğine ad alanını yazın. Ad alanlarını ayırmak için noktalı virgül (;) kullanın.

Öğelerin diyagramda nasıl görüneceğini değiştirme

Özelliklerini düzenleyerek katmanların boyutunu, şeklini, rengini ve konumunu veya bağımlılıkların rengini değiştirebilirsiniz.

Kod haritasındaki desenleri ve bağımlılıkları bulma

Bağımlılık diyagramları oluştururken kod eşlemeleri de oluşturabilirsiniz. Bu diyagramlar, kodu keşfederken desenleri ve bağımlılıkları keşfetmenize yardımcı olabilir. Derlemeleri, ad alanlarını ve sınıfları keşfetmek için Çözüm Gezgini, Sınıf Görünümü veya Nesne Tarayıcısı'nı kullanın. Bunlar genellikle mevcut katmanlara iyi karşılık gelir. Kod eşlemeleri hakkında daha fazla bilgi için bkz: