Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Nächste Überarbeitung | Vorherige Überarbeitung Nächste ÜberarbeitungBeide Seiten, nächste Überarbeitung | ||
faecher:informatik:oberstufe:modellierung:warum:start [25.10.2021 15:27] – angelegt sbel | faecher:informatik:oberstufe:modellierung:warum:start [25.10.2021 15:40] – [Wann ist ein Klassenentwurf "gut"?] sbel | ||
---|---|---|---|
Zeile 3: | Zeile 3: | ||
An dieser Stelle kann man sich mit zwei Fragestellungen befassen: | An dieser Stelle kann man sich mit zwei Fragestellungen befassen: | ||
- | - Warum macht man das überhaupt? Könnte man nicht einfach alles Funktionalität in einer Klasse unterbringen, | + | - **Warum macht man das überhaupt?** Könnte man nicht einfach alles Funktionalität in einer Klasse unterbringen, |
- | - Wenn die Modellierung eine Problems nicht eindeutig ist - woran erkennt man dann, ob man es " | + | - Wenn die OO-Modellierung eine Problems nicht eindeutig ist - **woran erkennt man dann, ob man es " |
+ | |||
+ | ==== Warum verteilt man die Funktionalität und den Code auf mehrere Klassen? ==== | ||
+ | |||
+ | Wenn man ein Problem sinnvoll modularisiert und modelliert, hat das viele Vorteile: | ||
+ | |||
+ | * **Lesbarkeit des Quellcodes** -> Etwas stimmt mit dem Tor nicht? Also muss man in der " | ||
+ | * Wenn man **Klassen** geschickt modelliert, kann man Sie in anderen Programmen **wiederverwenden** - nicht umsonst spricht man von " | ||
+ | * **Neue Objekte** können durch **neue Klassen** ein ein Modell eingefügt werden - du willst Hindernisse auf dem Spielfeld? Kein Problem mit der zusätzlichen " | ||
+ | |||
+ | ==== Wann ist ein Klassenentwurf " | ||
+ | |||
+ | Ein Klassenentwurf ist also " | ||
+ | |||
+ | * **Kohäsion**: | ||