schule:klassendiagramm
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
schule:klassendiagramm [2019-12-24 13:33] – [Klassen in C# und Python] marco.bakera | schule:klassendiagramm [2024-01-03 10:06] (aktuell) – [Klassen in Python] pintman | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== UML-Klassendiagramm ====== | ====== UML-Klassendiagramm ====== | ||
- | Häufig stellt man fest, dass es Objekte gibt, die sich in ihren Eigenschaften oder Verhalten (Attributen oder Methoden) ähneln. Diese Gemeinsamkeiten werden in Klassen zusammengefasst. Neben Eigenschaften bzw. Attributen habe Klassen | + | Häufig stellt man fest, dass es Objekte gibt, die sich in ihren Eigenschaften oder Verhalten (Attributen oder Methoden) ähneln. Diese Gemeinsamkeiten werden in Klassen zusammengefasst. Neben Eigenschaften bzw. Attributen habe Klassen Methoden, die aufgerufen werden können und ihr Verhalten bestimmen. Alle Objekte einer Klasse haben den gleichen Aufbau und verhalten sich ähnlich. Man kann sie übersichtlich in [[wpde> |
+ | Details stehen in //UML 2.0 Pocket-Reference// | ||
===== Aufbau und Zweck ===== | ===== Aufbau und Zweck ===== | ||
- | {{:schule:prog:klassendiagramm_beispiel.png|}} | + | | Person |
+ | | - name: string \\ - alter: int | | ||
+ | | + erfrage_Name(): | ||
* Warum? Um Übersicht über ein komplexes Programm zu erhalten. | * Warum? Um Übersicht über ein komplexes Programm zu erhalten. | ||
Zeile 17: | Zeile 20: | ||
* Beziehungen zwischen Klassen lassen sich darstellen: " | * Beziehungen zwischen Klassen lassen sich darstellen: " | ||
- | ===== Klassen | + | ===== Umsetzung |
- | Klassen werden in Python mit dem Schlüsselwort '' | + | Programmiersprachen realisieren Klassen auf unterschiedliche Arten, die sich häufig jedoch in weiten Teilen ähneln. |
+ | |||
+ | ==== Klassen in Python ==== | ||
+ | |||
+ | Klassen werden in Python mit dem Schlüsselwort '' | ||
+ | |||
+ | **Achtung: | ||
<code python> | <code python> | ||
Zeile 31: | Zeile 40: | ||
return self.name | return self.name | ||
- | def erfrage_Alter(): | + | def erfrage_Alter(self): |
return self.alter | return self.alter | ||
- | def alter_Festlegen(self, neues_Alter): | + | def alter_festlegen(self, neues_Alter): |
self.alter = neues_Alter | self.alter = neues_Alter | ||
Zeile 43: | Zeile 52: | ||
def essen(self, nahrungsMittel): | def essen(self, nahrungsMittel): | ||
nahrungsmittel.aufessen() | nahrungsmittel.aufessen() | ||
+ | | ||
+ | | ||
+ | # Sobald die Klasse deklariert ist, können Objekte erzeugt | ||
+ | # und die Methoden und Attribute verwendet werden. | ||
+ | |||
+ | peter = Person() | ||
+ | peter.name = " | ||
+ | print(peter.erfrage_Name()) | ||
+ | peter.alter_festlegen(18) | ||
+ | print(peter.erfrage_Alter()) # 18 | ||
+ | |||
</ | </ | ||
+ | |||
//Kapitel 8: Objektorientierte Programmierung// | //Kapitel 8: Objektorientierte Programmierung// | ||
+ | Weitere Details stehen in //Python Crashkurs// Kapitel 9: // | ||
- | Klassen werden in C# mit dem Schlüsselwort '' | + | In Python können auch Typen mit sogenannten [[https:// |
- | <code csharp> | + | ==== Klassen in C# ==== |
- | class Person | + | |
- | { | + | |
- | string name; | + | |
- | int alter; | + | |
- | + | ||
- | public string erfrageName() | + | |
- | { | + | |
- | return name; | + | |
- | } | + | |
- | + | ||
- | public int erfrageAlter() | + | |
- | { | + | |
- | return alter; | + | |
- | } | + | |
- | + | ||
- | public void alterFestlegen(int neuesAlter) | + | |
- | { | + | |
- | alter = neuesAlter; | + | |
- | } | + | |
- | + | ||
- | public void laufen() | + | |
- | { | + | |
- | // ... | + | |
- | } | + | |
- | public void essen(Nahrung nahrungsMittel) | + | |
- | { | + | |
- | nahrungsmittel.aufessen(); | + | |
- | } | + | |
- | } | + | |
- | </ | + | |
- | ===== Klassendiagramme | + | → [[Klassen |
- | Visual Studio unterstützt den Entwickler, da es Klassendiagramme nahtlos in die Entwicklungsumgebung integriert. | ||
- | |||
- | < | ||
- | <iframe src="// | ||
- | </ | ||
===== Klassendiagramme für Python ===== | ===== Klassendiagramme für Python ===== | ||
+ | |||
+ | Verschiedene IDEs wie etwa [[python# | ||
+ | |||
+ | **Achtung!** Klassendiagramme, | ||
Mit dem Programm '' | Mit dem Programm '' | ||
Zeile 104: | Zeile 95: | ||
Klassendiagramme kommen häufig in IHK-Prüfungen vor. So z.B. in //2015, Winter, Handlungsschritt 2//. | Klassendiagramme kommen häufig in IHK-Prüfungen vor. So z.B. in //2015, Winter, Handlungsschritt 2//. | ||
+ | |||
schule/klassendiagramm.1577190816.txt.gz · Zuletzt geändert: 2019-12-24 13:33 von marco.bakera