Różnica między agregacją a kompozycją

Kluczowa różnica - agregacja a kompozycja
 

Programowanie obiektowe (OOP) jest powszechnym paradygmatem w rozwoju oprogramowania. Obiekt jest instancją klasy. Nie można jednocześnie tworzyć obiektów. Powinien istnieć plan lub opis, aby utworzyć obiekt. Ten plan jest znany jako klasa. Klasa zawiera właściwości i metody. Obiekty są tworzone za pomocą klas. Klasa i przedmiot są podobne do planu i domu w prawdziwym świecie. Nie można zbudować domu bez odpowiedniego planu. Podobnie klasa służy do tworzenia obiektu. Obiekt współpracuje z innymi obiektami. Łącze z reprezentuje relację dwóch lub więcej obiektów nazywane jest „powiązaniem”. Agregacja i skład to rodzaje skojarzeń. Opisują relacje między klasami. W tym artykule omówiono różnicę między agregacją a kompozycją. The kluczowa różnica między agregacją a kompozycją jest to agregacja to powiązanie między dwoma obiektami, które opisuje relację „ma”, a kompozycja jest bardziej specyficznym typem agregacji, co oznacza własność.

ZAWARTOŚĆ

1. Przegląd i kluczowa różnica
2. Co to jest agregacja
3. Co to jest skład
4. Podobieństwa między agregacją a składem
5. Porównanie obok siebie - agregacja vs skład w formie tabelarycznej
6. Podsumowanie

Co to jest agregacja?

Relacja między dwoma obiektami jest pokazana poprzez narysowanie linii w Unified Modeling Language (UML). Link jest skojarzeniem. UML pomaga uzyskać wizualną reprezentację systemu. Różni się od zwykłych języków programowania. Skojarzenie określa również różnorodność obiektów. Są jeden do jednego, jeden do wielu i wiele do wielu. Gdy pojedynczy obiekt klasy A jest powiązany z pojedynczym obiektem klasy B, jest to relacja jeden do jednego. Przykładem jest autor piszący książkę. W tym przykładzie jeden autor pisze książkę.

Kiedy jeden obiekt klasy A jest powiązany z wieloma obiektami klasy B, jest to relacja jeden do wielu. Przykładem może być dział mający wielu pracowników. Kiedy obiekt klasy A jest powiązany z wieloma obiektami klasy B, a obiekt klasy B jest powiązany z wieloma obiektami klasy A, jest to skojarzenie wiele do wielu. Jednym z przykładów jest to, że pracownik może pracować nad wieloma projektami, a projekt może mieć wielu pracowników.

Agregacja to powiązanie typów, które dalej opisuje relacje między obiektami. Agregacja opisuje relację „ma”. Oto kilka przykładów opisujących związek: uczeń „ma” identyfikator studenta, pojazd „ma” silnik. Możliwe jest również powiększenie dużej ilości za pomocą relacji. Oto kilka przykładów: bank „ma wiele” kont bankowych, klasa „ma wielu” uczniów. Można to wyjaśnić na poniższym przykładzie.

Rysunek 01: Agregacja

Zgodnie z powyższym przykładem, klasa składa się z ucznia lub wielu uczniów. Wielość jest również używana do wskazywania liczby obiektów. Opisuje, że jedna klasa ma wielu uczniów. Symbol diamentu reprezentuje agregację w UML. Obiekty studenckie nie polegają na obiekcie klasy. Jeśli obiekt klasy zostanie zniszczony, nie wpłynie to na obiekty uczniów. Te obiekty nadal będą istnieć.

Co to jest kompozycja?

Kompozycja jest bardziej specyficzną formą agregacji. Opisuje własność. Można to wyjaśnić na poniższym przykładzie.

Rysunek 02: Skład

Zgodnie z powyższym obiekt książki składa się z obiektu strony lub stron. Wielość jest również używana do wskazywania liczby obiektów. Opisuje, że jedna klasa ma wielu uczniów. Podświetlony symbol diamentu reprezentuje kompozycję w UML. Ponieważ książka ma stronę lub wiele stron, jest agregacją, ale jest bardziej szczegółowa. Jeśli obiekt książki zostanie zniszczony, obiekty strony również zostaną zniszczone. Obiekty strony nie mogą istnieć bez obiektu książki. Dlatego kompozycja jest bardziej specyficzną formą agregacji, która implikuje własność.

Jakie są podobieństwa między agregacją a składem?

  • Oba są używane w programowaniu obiektowym.
  • Oba są używane w Unified Modeling Language (UML), aby uzyskać wizualne zrozumienie systemu.

Jaka jest różnica między agregacją a składem?

Agregacja a kompozycja

Agregacja to powiązanie między dwoma obiektami, które opisuje relację „ma”. Kompozycja jest najbardziej specyficznym rodzajem agregacji implikującym własność.
 Symbol UML
Agregacja jest oznaczona diamentem. Kompozycja jest oznaczona podświetlonym diamentem.
Funkcjonalność
Podsumowując, jeśli obiekt będący właścicielem zostanie zniszczony, nie wpłynie to na obiekt zawierający. W składzie, jeśli obiekt będący właścicielem zostanie zniszczony, wpłynie to na obiekt zawierający.

streszczenie - Agregacja a kompozycja 

Programowanie obiektowe jest głównym paradygmatem w rozwoju oprogramowania. W OOP system jest modelowany przy użyciu obiektów. Te obiekty nie istnieją w izolacji. Obiekty współpracują z innymi obiektami. Relacja między obiektami jest znana jako asocjacja. Agregacja i skład to rodzaje skojarzeń. Różnica między agregacją a kompozycją polega na tym, że agregacja jest powiązaniem między dwoma obiektami, które opisuje relację „ma”, a kompozycja jest bardziej specyficznym rodzajem agregacji, która implikuje własność. Zarówno agregacja, jak i kompozycja pomagają zrozumieć zachowanie systemu.

Pobierz wersję PDF Agregacja a Kompozycja

Możesz pobrać wersję PDF tego artykułu i używać go do celów offline zgodnie z cytatem. Pobierz wersję PDF tutaj Różnica między agregacją a składem

Odniesienie:

1. Korzystanie z agregacji i kompozycji, Kariera osób, 22 maja 2015 r. Dostępne tutaj