Klassendiagramm: Unterschied zwischen den Versionen

Keine Bearbeitungszusammenfassung
 
(5 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 67: Zeile 67:


<html>
<html>
<iframe width="450" height="300" src="https://www.youtube.com/embed/06FGt0K143k?si=GYrIA4cCqdgMttYs" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
<iframe width="280" height="157.5" src="https://www.youtube.com/embed/06FGt0K143k?si=GYrIA4cCqdgMttYs" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</html>
</html>


<html>
<html>
<iframe width="450" height="300" src="https://www.youtube.com/embed/-STQ2qv2Yso?si=T7s2mTRXg2pymWDA" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
<iframe width="280" height="157.5" src="https://www.youtube.com/embed/-STQ2qv2Yso?si=T7s2mTRXg2pymWDA" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</html>
</html>


Zeile 102: Zeile 102:
Die Lebenszeit der Einzelteile ist der des Ganzen untergeordnet. Sie werden also zusammen mit dem Aggregat erzeugt, und sie werden zusammen mit dem Aggregat zerstört (Analyse und Design mit UML 2.3: objektorientierte Softwareentwicklung von Bernd Oestereich, Oldenbourg 2009 Seite 94 ff)
Die Lebenszeit der Einzelteile ist der des Ganzen untergeordnet. Sie werden also zusammen mit dem Aggregat erzeugt, und sie werden zusammen mit dem Aggregat zerstört (Analyse und Design mit UML 2.3: objektorientierte Softwareentwicklung von Bernd Oestereich, Oldenbourg 2009 Seite 94 ff)


== Beispiele ==
=== Beispiele ===


Die Bedeutung für die Implementierung lässt sich am Besten anhand eines Beispiels nachvollziehen. Die Kompositionsbeziehung  zwischen Gebäude und Raum wird über eine dynamische Datenstruktur (hier ein ArrayList) und den Konstruktor der Klasse Gebaeude realisiert.
Die Bedeutung für die Implementierung lässt sich am Besten anhand eines Beispiels nachvollziehen. Die Kompositionsbeziehung  zwischen Gebäude und Raum wird über eine dynamische Datenstruktur (hier ein ArrayList) und den Konstruktor der Klasse Gebaeude realisiert.
Zeile 126: Zeile 126:
}
}
</syntaxhighlight>
</syntaxhighlight>
== Navigierbarkeit ==
== Navigierbarkeit ==
[[Datei:UML Klassendiagramm Navigierbarkeit.jpg|mini]]
[[Datei:UML Klassendiagramm Navigierbarkeit.jpg|mini]]
Eine weitere Eigenschaft einer Beziehung ist ihre Navigierbarkeit. Man spricht in diesem Zusammenhang auch von einer "gerichteten" Beziehung. Die Navigierbarkeit sagt etwas darüber aus, ob die eine [[Klasse]] auf die in beziehungstehende [[Klasse]] zugreifen kann bzw. [[Objekt|Objekte]] dieser Klasse kennt. Die Navigierbarkeit wird meistens in den Designmodellen angegeben, in den Analysemodellen spielt die Navigierbarkeit selten eine Rolle.
Eine weitere Eigenschaft einer Beziehung ist ihre Navigierbarkeit. Man spricht in diesem Zusammenhang auch von einer "gerichteten" Beziehung. Die Navigierbarkeit sagt etwas darüber aus, ob die eine [[Klasse]] auf die in beziehungstehende [[Klasse]] zugreifen kann bzw. [[Objekt|Objekte]] dieser Klasse kennt. Die Navigierbarkeit wird meistens in den Designmodellen angegeben, in den Analysemodellen spielt die Navigierbarkeit selten eine Rolle.
<html>
<html>
<iframe width="450" height="300" src="https://www.youtube.com/embed/fjkoK6ed00E?si=tz_TuRFN-h9vMDxg" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
<iframe width="280" height="157.5" src="https://www.youtube.com/embed/fjkoK6ed00E?si=tz_TuRFN-h9vMDxg" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</html>
</html>
<html>
<html>
<iframe width="450 height="300" src="https://www.youtube.com/embed/b-RueUJeZHM?si=m2xpodntDTBjNIB5" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
<iframe width="280 height="157.5" src="https://www.youtube.com/embed/b-RueUJeZHM?si=m2xpodntDTBjNIB5" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</html>
</html>


Zeile 222: Zeile 225:
[[Datei:Static UML.png|mini]]
[[Datei:Static UML.png|mini]]
Statische [[Attribut|Attribute]] und [[Methode|Methoden]] werden in [[UML]] mittels Unterstrich dargestellt. So sind im unteren Schaubild die [[Instanzvariable|Instanzvariablen]] count und die Methode get_count() statisch.
Statische [[Attribut|Attribute]] und [[Methode|Methoden]] werden in [[UML]] mittels Unterstrich dargestellt. So sind im unteren Schaubild die [[Instanzvariable|Instanzvariablen]] count und die Methode get_count() statisch.
[[Kategorie:Modellierung]]
[[Kategorie:FI_I_SDM]]
[[Kategorie:AHR_I_Informatik_LK]]
[[Kategorie:AHR_WuV_WI_GK]]