[ markojo @ 15.12.2007. 18:38 ] @
Zeleo bih da shvatim slozen dijagram sa vise klasa i veza medju njima. Koliko pise pise postoje 4 vrste odnosa koji mogu biti jednosmerni i dvosmerni. Asocijacija, zavisnost, kompozicija i agregacija. Zavisnost - objekti jedne klase su argumenti metode druge ili lokalni objekti u metodama - OK Asocijacija - medju atributima jedne klase postoji atribut koji je pokazivac ili upucivac na objekte druge klase. Pomocu njega moze da se pristupa clanovima druge klase. Kompozicija i agregacija podrazumevaju asocijaciju ? Kapiram kompoziciju iz prakse - u jednoj klasi postoje objekti tipa druge (mogu i pokazivaci i upucivaci); "delovi se stvaraju i unistavaju zajedno sa sklopom". E, agregacija ce mi biti u zadatku koji cu morati da uradim - "delovi mogu da postoje izvan sklopa da se stavljaju i vade iz njega.Za uspostavljanje ovog odnosa mogu se koristiti samo pokazivaci u agregatu (ili u obe klase ako je odnos dvostrani). Samo pomocu njih moze uspostavljeni odnos medju objektima da se raskida kada deo treba izvaditi iz sklopa." Znaci ako nije upotrebljen pokazivac, vec atribut/upucivac tipa druge klase ne radi se o agregaciji vec kompoziciji ? Jel dovoljno da u agregatu postoji neki jedinstveni parametar po kome cu da kombinujem delove po potrebi(index niza,struktura sa jedinstvenim brojem + pokazivac na deo...) ? Od ove teorije ne mogu da razaberem sta je sta i da pravilno povezem klase, jel ima nekih jednostavnih pravila za projektovanje klasnih dijagrama, ili slikovitih primera da se vidi razlika agregat/kompozit/asocijacija ? |