UML İlişki Türleri: İlişkilendirme, Bağımlılık, Genelleme
⚡ Akıllı Özet
UML ilişkileri yapısal, davranışsal ve grupsal unsurları birbirine bağlar.ping Bir modelin öğelerini gösteren bu kaynak, nesnelerin yürütme sırasında birbirlerine nasıl bağlı olduklarını açıklamaktadır. İlişkilendirme, bağımlılık, genelleme, gerçekleştirme, bileşim ve toplama kavramlarını, her bir tür için gösterim ve gerçek dünya örnekleriyle birlikte açıklamaktadır.

UML İlişkisi Nedir?
UML'de İlişkiler yapısal, davranışsal veya grupsal unsurlar arasındaki bağlantıyı temsil etmek için kullanılırlar.ping İki veya daha fazla şeyin bir sistemin yürütülmesi sırasında birbirleriyle nasıl ilişki kurabileceğini açıklayan bir bağlantı olarak da adlandırılır. UML İlişki Türleri; İlişkilendirme, Bağımlılık, Genelleme ve Gerçekleştirmedir.
Bunları ayrıntılı olarak inceleyelim
UML Sınıf Diyagramı İlişki Türleri
Dernek
UML modelinin öğelerini birbirine bağlayan bir dizi bağlantıdır. Aynı zamanda bu ilişkide kaç nesnenin yer aldığını da tanımlar.
Bağımlılık
Bağımlılık ilişkisinde adından da anlaşılacağı gibi iki veya daha fazla öğe birbirine bağımlıdır. Bu tür bir ilişkide belli bir öğede değişiklik yaparsak diğer tüm öğelerin de bu değişiklikten etkilenmesi muhtemeldir.
Genelleme
Buna ebeveyn-çocuk ilişkisi de denir. Genellemede, bir öğe başka bir genel bileşenin uzmanlaşmasıdır. Onun yerine ikame edilebilir. Çoğunlukla mirası temsil etmek için kullanılır.
gerçekleşme
UML'nin gerçekleşme ilişkisinde, bir varlık, kendisi tarafından uygulanmayan bazı sorumlulukları ve bunları uygulayan diğer varlığı belirtir. Bu ilişki çoğunlukla aşağıdaki durumlarda bulunur: arayüzler.
Dernek
Nesnelerin sistem içindeki başka bir nesneyle bağlanabileceğini veya ilişkilendirilebileceğini temsil eden yapısal bir ilişkidir. İlişkilendirme ilişkisine aşağıdaki kısıtlamalar uygulanabilir.
- {örtük} – Örtülü kısıtlamalar ilişkinin açık olmadığını belirtir; bir konsepte dayanmaktadır.
- {sipariş edildi} – Sıralı kısıtlamalar, bir ilişkinin bir ucundaki nesne kümesinin belirli bir şekilde olduğunu belirtir.
- {değiştirilebilir} – Değiştirilebilir kısıtlama, sistemdeki çeşitli nesneler arasındaki bağlantının ihtiyaca göre eklenebileceğini, kaldırılabileceğini ve değiştirilebileceğini belirtir.
- {addOnly} – İlişkilendirmenin diğer ucunda yer alan bir nesneden yeni bağlantıların eklenebileceğini belirtir.
- {dondurulmuş} – İki nesne arasına bir bağlantı eklendiğinde, verilen bağlantı veya bağlantıda dondurulmuş kısıtlama etkinken bu bağlantının değiştirilemeyeceğini belirtir.
Ayrıca ilişkilendirme özelliklerine sahip bir sınıf da oluşturabiliriz; buna birlik sınıfı denir.
Dönüşlü ilişki
Dönüşlü ilişkilendirme, UML'deki ilişkilendirme ilişkisinin bir alt türüdür. Dönüşlü bir birliktelikte aynı sınıfın örnekleri birbiriyle ilişkilendirilebilir. Bir sınıfın örneğinin aynı zamanda bir nesne olduğu da söylenir.
Dönüşlü ilişkilendirme, aynı sınıfın nesneleri içinde bir bağlantının veya bağlantının bulunabileceğini belirtir.
Bir sınıf meyvesi örneğini ele alalım. Meyve sınıfının mango ve elma gibi iki örneği vardır. Dönüşlü çağrışım, mango ve elma arasında bir bağlantının, meyve gibi aynı sınıfın örnekleri oldukları için mevcut olabileceğini belirtir.
Yönlendirilmiş dernek
Adından da anlaşılacağı gibi yönlendirilmiş ilişkilendirme, ilişkilendirme sınıfları içindeki akışın yönüyle ilgilidir.
Yönlendirilmiş bir ilişkide akış yönlendirilir. Bir sınıftan diğer sınıfa olan ilişki yalnızca tek bir yönde akar.
Ok uçlu düz bir çizgi kullanılarak gösterilir.
Örnek:
Bir sunucu ile istemci arasında yönlendirilmiş bir ilişki ilişkisi olduğunu söyleyebilirsiniz. Sunucu, istemcinin isteklerini işleyebilir. Bu akış tek yönlüdür ve yalnızca sunucudan istemciye akar. Dolayısıyla, bir sistemin sunucuları ve istemcileri arasında yönlendirilmiş bir ilişkilendirme ilişkisi mevcut olabilir.
Bağımlılık
UML'de bir bağımlılık ilişkisini kullanarak, belirli bir sistem içindeki çeşitli şeylerin birbirine ne kadar bağımlı olduğu ilişkilendirilebilir. Bağımlılık, UML'deki birbirine bağımlı çeşitli öğeler arasındaki ilişkiyi tanımlamak için kullanılır.
Stereotipler
- «bağlamak» – Bağlama, kaynağın, sağlanan parametreleri veya değerleri kullanarak şablonu hedef konumda başlatabileceğini belirten bir kısıtlamadır.
- «türetmek» – Bir kaynak nesnenin konumunun hedef nesneden hesaplanabileceğini temsil eder.
- «arkadaş» – Kaynağın hedef nesnede benzersiz görünürlüğe sahip olduğunu belirtir.
- "örneği" – Bir hedef sınıflandırıcının örneğinin kaynak nesne olduğunu belirtir.
- "örneklendirmek" – Kaynak nesnenin hedef nesnenin örneklerini oluşturabildiğini belirtir.
- «rafine etmek» – Kaynak nesnenin istisnai mutlak değerlere sahip olduğunu belirtir.tracHedef nesneninkinden daha fazla.
- "kullanmak" – UML'de paketler oluşturulduğunda kullanılır. Kullanım stereotipi, bir kaynak paketin öğelerinin hedef paketin içinde de bulunabileceğini açıklar. Kaynak paketin, hedef paketin bazı öğelerinden yararlandığını açıklar.
- "yerine geçmek" – çalışma zamanında tedarikçinin yerine müşterinin geçebileceğini belirtir.
- "erişim" – Kaynak paketin hedef paketin elemanlarına eriştiğini belirtir buna özel birleşme de denir.
- "İçe aktarmak" – Hedefin, kaynak paketin öğesini, içinde tanımlandığı gibi içe aktarabileceğini belirtir. halka açık birleşme olarak da adlandırılan hedef.
- "izin vermek" – tedarikçinin beyan edilen görünürlüğü ne olursa olsun, kaynak elemanın tedarikçi elemanına erişimi olduğunu belirtir.
- "uzatmak" – Hedefin, kaynak öğenin davranışını genişletebileceğini belirtmenize yardımcı olur.
- "katmak" – Belirtilen konumdaki başka bir öğenin davranışına dahil edilebilecek kaynak öğeyi belirtmenize olanak tanır. (c/c++'daki işlev çağrısıyla aynı)
- "haline gelmek" – Hedefin farklı değer ve rollere sahip kaynağa benzer olduğunu belirtir.
- "Arama" – Kaynağın bir hedef nesne yöntemini çağırabileceğini belirtir.
- "kopya" – Hedef nesnenin bağımsız olduğunu, kaynak nesnenin kopyası olduğunu belirtir.
- "parametre" Tedarikçi, müşterinin işlemlerinin bir parametresidir.
- "Göndermek" – İstemci, tedarikçiye belirtilmemiş bir hedef gönderen bir işlemdir.
Devlet makinesi arasındaki stereotipler
- "Göndermek" – Kaynak işleminin hedef olayı gönderdiğini belirtir.
Genelleme
Genel bir varlık ile sistem içinde bulunan benzersiz bir varlık arasındaki ilişkidir.
Bir genelleme ilişkisinde, nesne yönelimli kavram olarak adlandırılan miras Uygulanabilir. Varlıklar veya şeyler olarak da adlandırılan iki nesne arasında bir genelleme ilişkisi vardır. Genelleme ilişkisinde, bir varlığın ebeveyn olduğu, diğerinin ise çocuk olduğu söylenir. Bu varlıklar miras kullanılarak temsil edilebilir.
Kalıtımda, herhangi bir ebeveynin çocuğu, ana nesnede belirtilen işlevselliğe erişebilir, güncelleyebilir veya devralabilir. Bir alt nesne, işlevselliğini kendisine ekleyebileceği gibi, bir ana nesnenin yapısını ve davranışını da devralabilir.
Bu tür ilişkiler topluca genelleme ilişkisi olarak bilinir.
Stereotipler ve sınırlamaları
- «uygulama» – Bu stereotip, alt varlığın ana varlık tarafından, kuralları ihlal etmeden bir ana nesnenin yapısını ve davranışını devralarak uygulandığını temsil etmek için kullanılır. Not: Bu klişe tek bir alanda yaygın olarak kullanılmaktadır. miras.
Genelleme ilişkisi, tüm alt varlıkların ilişkiye dahil edilip edilmediğini kontrol etmek için tam, eksik gibi kısıtlamalar içerir.
gerçekleşme
UML'nin gerçekleşme ilişkisinde, bir varlık, kendisi tarafından uygulanmayan bazı sorumlulukları ve bunları uygulayan diğer varlığı belirtir. Bu ilişki çoğunlukla aşağıdaki durumlarda bulunur: arayüzler.
Gerçekleşme iki şekilde temsil edilebilir:
- Bir kullanma kanonik form
- Kullanımı yıl atlanmış form

Yukarıdaki diyagramda, hesap iş kuralları IRuleAgent arayüzünü gerçekleştirir.
Gerçekleştirme türleri
- Kanonik biçim: UML'de bir gerçekleştirme ilişkisinde, kanonik biçim sistem genelinde arayüzleri gerçekleştirmek için kullanılır. Bir arayüz oluşturmak için bir arayüz stereotipi kullanılır ve belirli bir arayüzü gerçekleştirmek için gerçekleştirme ilişkisi kullanılır. Kanonik biçimde, gerçekleştirme ilişkisi, büyük bir açık ok ucuyla kesikli yönlendirilmiş çizgi kullanılarak gösterilir. Yukarıdaki diyagramda, Iruleagent arayüzü, Hesap İş Kuralları adlı bir nesne kullanılarak gerçekleştirilir.
- Kısaltılmış biçim: Gerçekleşme UML sınıf diyagramı Ayrıca, kısaltılmış bir biçimde de gösterilebilir. Kısaltılmış biçimde, arayüz bir daire ile gösterilir; bu aynı zamanda lolipop gösterimi olarak da adlandırılır. Bu arayüz, sistem içinde bulunan herhangi bir şey kullanılarak gerçekleştirildiğinde, kısaltılmış bir yapı oluşturur. Yukarıdaki diyagramda, Iruleagent arayüzü, acctrule.dll tarafından gerçekleştirilen kısaltılmış bir biçimde gösterilmiştir.
Bileşim
Standart bir UML ilişkisi değildir ancak halen çeşitli uygulamalarda kullanılmaktadır.
Bileşik toplama, aşağıdaki özelliklere sahip toplama ilişkisinin bir alt türüdür:
- nesneler arasında iki yönlü bir ilişkidir.
- Bu bir bütün/parça ilişkisidir.
- Bir kompozit silinirse onunla ilişkili diğer tüm parçalar silinir.
Bileşik toplama, agreganın (tam) ucunda dolu siyah bir elmasla süslenmiş ikili bir ilişki olarak tanımlanır.
Klasör, içinde n sayıda dosya tutan bir yapıdır. Bir klasör, içindeki dosyaları saklamak için kullanılır. Her klasör herhangi bir sayıda dosyayla ilişkilendirilebilir. Bir bilgisayar sisteminde her bir dosya, dosya organizasyon sistemindeki en az bir klasörün parçasıdır. Aynı dosya başka bir klasörün parçası da olabilir ancak bu zorunlu değildir. Bir dosya klasörden kaldırıldığında, klasör etkilenmeden kalır ve söz konusu dosyayla ilgili veriler yok edilir. Klasör üzerinde bir silme işlemi yürütülürse, bu aynı zamanda klasörün içinde bulunan tüm dosyaları da etkiler. Klasör sistemden kaldırıldığında, klasörle ilişkili tüm dosyalar otomatik olarak yok edilir.
UML'deki bu tür ilişki, bileşik toplama ilişkisi olarak bilinir.
toplama
An toplanma UML'de ilişki kurmanın bir alt türüdür. Birleştirme ve bileşim, UML'deki ilişki kurma türlerinin ikisidir. Birleştirme ilişkisi basitçe "bir sınıfın nesnesi, başka bir sınıfın nesnelerine sahip olabilir veya bunlara erişebilir" şeklinde tanımlanabilir.
Bir toplama ilişkisinde bağımlı nesne, kaynak nesne yok edilse bile ilişkinin kapsamında kalır.
Bir araba ve tekerlek örneğini ele alalım. Bir arabanın düzgün çalışması için bir tekerleğe ihtiyacı vardır, ancak bir tekerleğin her zaman bir arabaya ihtiyacı yoktur. Ayrıca bisiklet, bisiklet veya başka herhangi bir araçla da kullanılabilir ancak belirli bir araba için kullanılamaz. Burada tekerlek nesnesi araba nesnesi olmadan da anlamlıdır. Bu tür ilişkiye toplama ilişkisi denir.

