Die Einsendeaufgaben zu diesem Heft bestehen unter anderem aus Programmieraufgaben. Bitte senden Sie für eine vollständige Lösung Folgendes ein:
Ein Lösungsdokument im Format einer gängigen Textverarbeitung (doc, docx, odt, rtf) mit Ihrem Namen, dem Heftkürzel und Ihrer Vertragsnummer.
Bitte fügen Sie zu jeder Aufgabe den kompletten Lösungsquellcode ein.
Packen Sie zusätzlich alle erforderlichen Dateien zusammen in ein Zip- oder Rar-Archiv und senden Sie dieses Archiv ebenfalls ein. Gerne dürfen Sie diesem Archiv auch das Lösungsdokument hinzufügen.
1. Aufgabe:
Gegeben ist folgendes Klassendiagramm.
a) Codieren Sie die abgebildeten Klassen und deren Beziehungen mit PHP. Bitte speichern Sie alles gemeinsam in der Datei Klassendiagramm.php. Codieren Sie – sofern im Klassendiagramm angegeben – Konstruktoren sowie Getter- und Setter-Methoden. Achten Sie bitte darauf, dass Sie nur das codieren, was im Diagramm angegeben ist. Berücksichtigen Sie durchgängig starke Typisierung.
b) Erzeugen Sie von jeder Klasse eine Instanz und geben Sie sie mit var_dump() aus. Das Ergebnis sollte im Seitenquelltext aussehen wie auf der folgenden Abbildung.
2. Aufgabe:
Die abgeleitete Klasse Mitarbeiter aus dem Klassendiagramm in der Aufgabe 1. hat drei Eigenschaften, aber keine Methoden, um deren Werte zu lesen oder zu schreiben. Programmieren Sie in einer Datei mitarbeiter.php entsprechende Getter- und Setter-Methoden für die drei Attribute. Erzeugen Sie ein Objekt der Klasse Mitarbeiter und setzen Sie alle neuen Methoden mindestens einmal ein.
c) Erstellen Sie in der Datei konto.php ein PHP-Skript, das unter Verwendung der Klasse Konto mindestens ein Objekt erzeugt, einige Buchungen tätigt und entsprechende Ergebnisse ausgibt.
3. Aufgabe:
Planen und programmieren Sie eine Klasse Konto. Alle Attribute der Klasse sind private, alle Methoden public. Die Attribute sind kontonummer, kontostand und kontoinhaber. Wählen Sie sinnvolle Datentypen für die Eigenschaften und entsprechend auch für die Parameter und Rückgabewerte der Methoden. Der Name des Kontoinhabers, der Anfangskontostand und die Kontonummer sollen durch den Konstruktor gesetzt werden. Die Klasse benötigt mindestens Getter-Methoden für alle Attribute und zwei Methoden zum Buchen – eine zum Abheben und eine zum Einzahlen. Stellen Sie sicher, dass Abhebungen immer nur im Guthabenbereich erfolgen können. Beide Methoden zum Buchen sollen eine Erfolgsmeldung zurückliefern. Berücksichtigen Sie durchgängig starke Typisierung.
a) Erstellen Sie ein UML-Klassendiagramm für die Klasse Konto.
b) Codieren Sie die Klasse Konto. Speichern Sie sie in der Datei konto.class.php.