Les 2 klassediagrammen II Informatieanalyse Les 2 klassediagrammen II
Agenda Programma Doel Les 2 Herhaling les 1 (object, klasse, attribuut, operatie, associatie, multipliciteit en generalisatie). Recursieve associatie Aggregaties (Normale) aggregatie Compositie Opdracht
Herhaling les 1 Wat zijn objecten en/of klassen? Een object is een instantie (een uniek exemplaar) van een klasse. Een klasse kan meerdere instanties hebben. Of te wel een klasse kan een sjabloon zijn voor objecten.
Herhaling les 1 Wat zijn attributen? Een attributen zijn gegevenskenmerken die bij een klasse horen, waarvan we objecten willen gebruiken in het te ontwikkelen systeem.
Herhaling les 1 Wat zijn operaties? Een operaties zijn handelingen die bij een klasse horen, waarvan we objecten willen gebruiken in het te ontwikkelen systeem.
Herhaling les 1 Wat zijn associaties? Als je meerdere klassen hebt gedefinieerd, zullen er relaties tussen deze klassen bestaan. De relatie tussen deze klassen noemen we associatie.
Herhaling les 1 Soms is de associatie tussen de klasse niet altijd even duidelijk. In dat geval kunnen we aangeven welke rol de klasse speelt in de associatie.
Herhaling les 1 Wat is multipliciteit? Stel: van een bank weet je dat deze meerdere geldautomaten kan hebben. Maar een geldautomaat zal in het algemeen maar bij één bank horen. Dit noemen wij multipliciteit. Multipliciteit geeft aan hoeveel objecten van de klassen mogen of kunnen voorkomen
Herhaling les 1 Hoe geven we multipliciteit aan? 1 Het object aan deze kant komt 1 keer voor, dus niet minder (0) of meer dan 1. 1…8 Het object aan deze kant komt in deze relatie 1 tot 8 keer voor. 2, 4, 6, 8 Het object aan deze kant kan uitsluitend 2 of 4 of 6 of 8 keer voorkomen. * Het object kan oneindig veel keren voorkomen.
Herhaling les 1 Waarom overerving / generalisatie? Generalisatie geeft de ontwikkelaar de mogelijkheid om de eigenschappen van de reeds ontworpen klassen te gebruiken in andere klassen.
Herhaling les 1 Belangrijke regels bij generalisatie: Je geeft een generalisatie weer door aan het eind van een associatie een pijlpunt op te nemen die wijst naar de superklasse. In het algemeen geldt dat de subklasse de attributen en operaties van de superklasse erft. Een superklasse kan weer een subklasse zijn voor een andere klasse. Een subklasse kan meerdere superklasse hebben.
Aggregaties Een aggregatie is een associatie tussen klassen waarbij de ene klasse afhankelijk is van de andere. De aggregatie is te herkennen aan namen als: “bevat”, “bestaat”, “is onderdeel van”, afhankelijk vanuit welke kant je de relatie beschouwt. Er zijn twee soorten aggregatie: ‘zwakke’ aggregatie, ook wel (normale) aggregatie genoemd; ‘sterke’ aggregatie, ook wel compositie genoemd.
(Normale) aggregatie De normale aggregatie geeft aan dat de ene klasse een deel is van een groter geheel. Voorbeelden een stad is een aggregatie van huizen; een bos is een aggregatie van bomen.
Regels bij normale aggregatie Een normale aggregatie wordt aangegeven door een witte ruit (wybertje) aan het einde van de associatie; Het geheel blijft bestaan, ook als alle delen zijn verwijderd; Zowel het deel als het geheel mag deel uitmaken van andere relaties; Omdat het eigenlijk een bijzondere associatie is, gelden ook alle afspraken die gemaakt zijn bij de associaties.
Compositie Bij de compositie heeft de klasse geen bestaansrecht zonder de aanwezigheid van de gehele klasse. Voorbeeld: Als je van een tandenborstel de borstel en de steel worden verwijderd, bestaat de tandenborstel niet meer.
Regels bij compositie Een compositie wordt aangegeven door een zwarte ruit (wybertje) aan het eind van de associatie; Als delen van de compositie zijn verwijderd, bestaat ook het geheel niet meer; Een deel van de compositie mag geen onderdeel vormen van een andere compositie; Het geheel is verantwoordelijk voor de delen. De compositie is verantwoordelijk voor creatie en verwijdering van de delen.
Opdracht voor volgende week Maken opdracht “The Woodies” Maken opdracht “VMBO”