Difference between revisions of "Aggregation"
(→Resources) |
|||
Line 10: | Line 10: | ||
=Resources= | =Resources= | ||
+ | https://atomicobject.com/resources/oo-programming/object-oriented-aggregation | ||
+ | https://softwareengineering.stackexchange.com/questions/61376/aggregation-vs-composition | ||
== See also == | == See also == |
Revision as of 21:36, 21 June 2019
Contents
Definition
In object-oriented programming, aggregation is a whole/ part relationship between objects or classes. Class aggregation can correspond to physical containment in a model, such as a car that has an engine, doors, and windows. Class aggregation can also correspond to abstract containment such as a club and members. This relationship does not imply ownership, however.
Relevance
Explanation
Aggregation can be done by value or by reference. By value means that the two objects have the same lifespan and parts cannot be interchanged. By reference allows parts to be interchanged because the objects have been de-coupled. Another way to think of Aggregation is Object A “uses” Object B.
Resources
https://atomicobject.com/resources/oo-programming/object-oriented-aggregation https://softwareengineering.stackexchange.com/questions/61376/aggregation-vs-composition