Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
modul:m320_2024:learningunits:lu08:zweiseitigebeziehung [2024/09/12 13:15] – [Code-Beispiele] msuter | modul:m320_2024:learningunits:lu08:zweiseitigebeziehung [2024/09/18 13:43] (aktuell) – [Sourcecode] msuter | ||
---|---|---|---|
Zeile 2: | Zeile 2: | ||
Bei einer zweiseitigen Beziehung kennt ein Objekt A ein anderes Objekt B und umgekehrt.\\ | Bei einer zweiseitigen Beziehung kennt ein Objekt A ein anderes Objekt B und umgekehrt.\\ | ||
- | ==== Beispiel: Lernende/r und Lehrperson ==== | + | ===== Beispiel: Lernende/r und Lehrperson |
+ | ==== Klassendiagramm | ||
- | {{modul:m320: | + | {{:modul:m320_2024: |
//Abb: Klassen in einer zweiseitigen Beziehung // | //Abb: Klassen in einer zweiseitigen Beziehung // | ||
Zeile 18: | Zeile 19: | ||
</ | </ | ||
+ | ==== Sequenzdiagramm ==== | ||
- | {{modul:m320: | + | {{:modul:m320_2024: |
//Abb: Sequenz-Diagramm der Zuweisung einer zweiseitigen Beziehung über Methoden // | //Abb: Sequenz-Diagramm der Zuweisung einer zweiseitigen Beziehung über Methoden // | ||
- | ---- | + | ==== Sourcecode |
- | + | ||
- | ==== Beispiel: Lernende/r und Schulklasse | + | |
- | {{modul: | + | |
- | + | ||
- | //Abb: Klassen in einer zweiseitigen Beziehung// | + | |
- | + | ||
- | Ein Student wird bei der Anmeldung einer Klasse zugewiesen. | + | |
- | Daher macht es Sinn, diese Referenz über den Konstruktor mitzuteilen. | + | |
- | Dabei muss die Klasse '' | + | |
- | + | ||
- | {{modul: | + | |
- | + | ||
- | //Abb: Sequenz-Diagramm der Zuweisung einer zweiseitigen Beziehung über Konstruktor// | + | |
- | + | ||
- | ===== Code-Beispiele ===== | + | |
- | + | ||
- | Zu den oben gezeigten Beispielen, finden Sie hier den passenden Code in Python. | + | |
==== Lernende/r und Lehrperson ==== | ==== Lernende/r und Lehrperson ==== | ||
Zeile 47: | Zeile 31: | ||
<code python> | <code python> | ||
class Teacher: | class Teacher: | ||
- | |||
| | ||
def __init__(self, | def __init__(self, | ||
- | self._name | + | self._name |
- | self._ref2student | + | self._student |
| | ||
@student.setter | @student.setter | ||
def student(self, | def student(self, | ||
- | self._ref2student | + | self._student |
student.teacher = self | student.teacher = self | ||
Zeile 61: | Zeile 44: | ||
| | ||
def __init__(self, | def __init__(self, | ||
- | self._name | + | self._name |
- | self._ref2teacher | + | self._teacher |
| | ||
@teacher.setter | @teacher.setter | ||
def teacher(self, | def teacher(self, | ||
- | self._ref2teacher | + | self._teacher |
teacher.student = self | teacher.student = self | ||
Zeile 72: | Zeile 55: | ||
mia = Teacher(' | mia = Teacher(' | ||
cathy = Student(' | cathy = Student(' | ||
+ | | ||
+ | #ENTWEDER | ||
mia.student = cathy | mia.student = cathy | ||
#ODER | #ODER | ||
Zeile 77: | Zeile 62: | ||
</ | </ | ||
- | ==== Lernende/r und Schulklasse ==== | + | ===== Beispiel: |
+ | ==== Klassendiagramm ==== | ||
+ | |||
+ | {{: | ||
+ | |||
+ | //Abb: Klassen in einer zweiseitigen Beziehung// | ||
+ | |||
+ | Ein Student wird bei der Anmeldung einer Klasse zugewiesen. | ||
+ | Daher macht es Sinn, diese Referenz über den Konstruktor mitzuteilen. | ||
+ | Dabei muss die Klasse '' | ||
+ | |||
+ | ==== Sequenzdiagramm ==== | ||
+ | |||
+ | {{: | ||
+ | |||
+ | //Abb: Sequenz-Diagramm der Zuweisung einer zweiseitigen Beziehung über Konstruktor// | ||
+ | ==== Sourcecode ==== | ||
<code python> | <code python> | ||
Zeile 85: | Zeile 86: | ||
def __init__(self, | def __init__(self, | ||
self._designation = designation | self._designation = designation | ||
- | self._ref2student | + | self._student |
| | ||
@student.setter | @student.setter | ||
def student(self, | def student(self, | ||
- | self._ref2student | + | self._student |
class Student: | class Student: | ||
Zeile 95: | Zeile 96: | ||
def __init__(self, | def __init__(self, | ||
self._name = name | self._name = name | ||
- | self._ref2class | + | self._class |
the_class.student = self | the_class.student = self | ||