Jeżeli chcesz efektywnie studiować Javę, będziesz uważał koncepcję Agregacji za kluczowy czynnik w nauce Object-Oriented oraz Javy. Dlatego też, rozważenie tego zagadnienia może być pomocne w zrozumieniu i implementacji koncepcji Object-Oriented. Ten esej będzie omawiał Agregację w Javie jako problematyczne zagadnienie w celu zwiększenia naszych umiejętności w programowaniu w Javie.
Przed rozpoczęciem tego terminu, powinniśmy spojrzeć na termin Asocjacja, ponieważ Agregacja jest sposobem na osiągnięcie Asocjacji. W rzeczywistości, Asocjacja jest relacją pomiędzy dwoma oddzielnymi klasami, która ustanawia się poprzez ich Obiekty. Asocjacja może być zdefiniowana w następujący sposób: jeden do jednego, jeden do wielu, wiele do jednego oraz wiele do wielu. W programowaniu zorientowanym obiektowo, obiekt komunikuje się z innymi obiektami w celu korzystania z funkcjonalności i usług dostarczanych przez te obiekty. Innymi słowy, każdy obiekt ma swój własny cykl życia i nie ma właściciela. Zasadniczo, Kompozycja i Agregacja są sklasyfikowane jako dwie formy Asocjacji. Kompozycja jest ograniczoną formą Agregacji, w której dwa podmioty są wysoce zależne lub silnie związane ze sobą. Na przykład, Człowiek i Mózg. Człowiek potrzebuje mózgu, aby żyć, a mózg potrzebuje ludzkiego ciała, aby przetrwać.
Agregacja jest specjalną formą stowarzyszenia, które jest zdefiniowane jako jednokierunkowe jednokierunkowe połączenie między klasami lub podmiotów. Na przykład, klasy Portfel i Pieniądze. Portfel posiada Pieniądze, ale Pieniądze nie muszą koniecznie posiadać Portfela. Tak więc, jest to uważane za jednokierunkową relację. W skrócie, możemy być w stanie wymienić ten termin, jak poniżej:
- Agregacja jest sposobem na osiągnięcie Association.
2. Jeśli klasa ma odniesienie do encji, to jest znany jako Aggregacja.
3. Agregacja w Javie reprezentuje związek HAS-A.
4. Reprezentuje słaby związek między obiektami.
5. Ilustruje związek, w którym jeden obiekt zawiera inne obiekty jako część swojego stanu
W poniższym przykładzie, EmployeeClass ma obiekt AddressClass, a adresObject zawiera własne informacje, takie jak miasto, stan, kraj. Innymi słowy, EmployeeClass HAS-A AddressClass.
Jednakże, pytanie brzmi, kiedy powinniśmy używać Agregacji czy Dziedziczenia (is-a relationship) w naszych programach, ponieważ jak wiemy Dziedziczenie jest kolejną koncepcją w programowaniu obiektowym, która jest związana z łączeniem obiektów.
- Jeśli nowa klasa jest mniej więcej taka jak klasa oryginalna, możemy użyć dziedziczenia. Tak więc, nowa klasa jest podklasą oryginalnej klasy teraz.
- Jeśli nowa klasa musi mieć oryginalną klasę, możemy użyć agregacji. Nowa klasa ma oryginalną klasę jako członka teraz.
Zaleta używania Agregacji w naszych programach:
Właściwie, główną korzyścią z używania Agregacji jest ponowne wykorzystanie kodu. Ponowne wykorzystanie to użycie istniejących zasobów lub komponentów w pewnych formach w ramach produktu oprogramowania podczas procesu rozwoju. W rezultacie oznacza to, że ta kwestia może odgrywać istotną rolę w rozwoju oprogramowania o wysokiej jakości.
Główne korzyści dla oprogramowania, które wykorzystują koncepcję ponownego użycia są jak poniżej:
- Zwiększenie produktywności oprogramowania.
- Skrócenie czasu rozwoju oprogramowania.
- Rozwój oprogramowania z mniejszą liczbą osób.
- Move components more easily from project to another one.
- Reduce software development and maintenance costs.
- Produce more standardized software.
- Produce better quality software and provide a powerful competitive advantage.
Podsumowując, Aggregacja pozwala na projektowanie klas, które podążają za dobrymi praktykami Object Oriented. Zapewnia również możliwość ponownego wykorzystania kodu; powinniśmy jednak mądrze korzystać z innych koncepcji programowania obiektowego w różnych sytuacjach.
.