У об'єктно-орієнтованому програмуванні й проєктуванні баз даних «Has-a» (також has_a, HasA і т. ін.) — взаємозв'язок у якому один об'єкт (компонент) «належить» (є частиною або членом) іншому об'єкту (композит) і підкоряється правилам приналежності. Обернене відношення іноді називають «is of».
Відношення has-а є відмінним від is-a, яке позначає таксономічну ієрархію ([en]). Вважається що відношення has-a має слабшу зв'язність ніж «is-a» та інші переваги (див. [en]).
В UML зв'язки has-a бувають трьох типів: асоціація, агрегація й композиція. Асоціація — можливість просто послати повідомлення (викликати метод) іншому об'єкту. Наприклад зв'язок подружжя — асоціація. Агрегація — аналогічна асоціації, але можливі зв'язки тільки в одному напрямку. Асоціації можуть утворювати довільний напрямлений граф (тобто можливі, двонаправлені has-a зв'язки) агрегації — лише дерево. Наприклад людина може мати дітей, і її діти можуть мати дітей, але мати батьків — це вже інший вид зв'язку (хоча теж можливо агрегація). Композиція — зв'язок між об'єктами, при якому час життя членів визначається часом життя складеного об'єкту. Наприклад зв'язок між людиною і рукою людини — композиція, рука сама по собі без людини не має сенсу і не функціонує.
Див. також
Примітки
- Python, Real. Inheritance and Composition: A Python OOP Guide – Real Python. realpython.com (англ.). Процитовано 17 вересня 2023.
- Is A and Has A relationships. www.ibm.com (en-us) . IBM. Процитовано 17 вересня 2023.
- Composition vs Inheritance. www.digitalocean.com (англ.). DigitalOcean. Процитовано 17 вересня 2023.
- Martin, Robert C. (ootips) Association, Aggregation and Composition. ootips.org. Процитовано 17 вересня 2023.
- Mutual Hasa Relationship. WikiWikiWeb. Процитовано 17 вересня 2023.
- Thakur, Aniket (13 листопада 2014). Open Source For Geeks: Difference between Association, Aggregation and Composition in UML, Java and Object Oriented Programming. Open Source For Geeks. Процитовано 17 вересня 2023.
Література
- Fowler, Martin. UML distilled: a brief guide to the standard object modeling language (вид. 3., 16. printing). Boston, Mass.: Addison-Wesley. ISBN .
- Pender, Thomas A.; Pender, Tom (2003). UML bible. Indianapolis, Ind: Wiley. ISBN .
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
U ob yektno oriyentovanomu programuvanni j proyektuvanni baz danih Has a takozh has a HasA i t in vzayemozv yazok u yakomu odin ob yekt komponent nalezhit ye chastinoyu abo chlenom inshomu ob yektu kompozit i pidkoryayetsya pravilam prinalezhnosti Obernene vidnoshennya inodi nazivayut is of Vidnoshennya has a ye vidminnim vid is a yake poznachaye taksonomichnu iyerarhiyu en Vvazhayetsya sho vidnoshennya has a maye slabshu zv yaznist nizh is a ta inshi perevagi div en Vidi Has a zv yazkiv v UML diagramah V UML zv yazki has a buvayut troh tipiv asociaciya agregaciya j kompoziciya Asociaciya mozhlivist prosto poslati povidomlennya viklikati metod inshomu ob yektu Napriklad zv yazok podruzhzhya asociaciya Agregaciya analogichna asociaciyi ale mozhlivi zv yazki tilki v odnomu napryamku Asociaciyi mozhut utvoryuvati dovilnij napryamlenij graf tobto mozhlivi dvonapravleni has a zv yazki agregaciyi lishe derevo Napriklad lyudina mozhe mati ditej i yiyi diti mozhut mati ditej ale mati batkiv ce vzhe inshij vid zv yazku hocha tezh mozhlivo agregaciya Kompoziciya zv yazok mizh ob yektami pri yakomu chas zhittya chleniv viznachayetsya chasom zhittya skladenogo ob yektu Napriklad zv yazok mizh lyudinoyu i rukoyu lyudini kompoziciya ruka sama po sobi bez lyudini ne maye sensu i ne funkcionuye Model sutnist zv yazok Div takozhIs a Kompoziciya programuvannya PrimitkiPython Real Inheritance and Composition A Python OOP Guide Real Python realpython com angl Procitovano 17 veresnya 2023 Is A and Has A relationships www ibm com en us IBM Procitovano 17 veresnya 2023 Composition vs Inheritance www digitalocean com angl DigitalOcean Procitovano 17 veresnya 2023 Martin Robert C ootips Association Aggregation and Composition ootips org Procitovano 17 veresnya 2023 Mutual Hasa Relationship WikiWikiWeb Procitovano 17 veresnya 2023 Thakur Aniket 13 listopada 2014 Open Source For Geeks Difference between Association Aggregation and Composition in UML Java and Object Oriented Programming Open Source For Geeks Procitovano 17 veresnya 2023 LiteraturaFowler Martin UML distilled a brief guide to the standard object modeling language vid 3 16 printing Boston Mass Addison Wesley ISBN 0 321 19368 7 Pender Thomas A Pender Tom 2003 UML bible Indianapolis Ind Wiley ISBN 0 7645 2604 9