Studium
Bachelor
- 1.Semester (WS 07/08)
- 2.Semester (SoSe 2008)
- 3.Semester (WS 08/09)
- 4.Semester (SoSe 2009)
- 5.Semester (WS 09/10)
- 6.Semester (SoSe 2010)
- 7.Semester (WS 10/11)
Master
- 8.Semester (SoSe 2011)
- 9.Semester (WS 11/12)
Algorithmen und Programmierung II - Objektorientierte Programmierung
Dozent: Prof. Dr.-Ing. Heinz F. Schweppe
Inhalt
Grundlagen der Berechenbarkeit:
- universelle Registermaschinen
- Syntax und operationelle Semantik imperativer Programmiersprachen
Formale Verfahren zur Spezifikation und Verifikation imperativer Programme:
- Bedingungen auf dem Zustandsraum (assertions),
- Hoare-Kalkül, partielle Korrektheit, Termination
Konzepte imperativer und objektorientierter Programmierung (Java):
- primitive und zusammengesetzte Datentypen,
- Methoden (Prozeduren und Funktionen), Parameterübergabe, Überladung
- Module, Klassen, Objekte
- Klassenhierarchien, Vererbung, abstrakte Klassen, Schnittstellen
Programmiermethodik:
- schrittweise korrekte Programmentwicklung
- Teile und Herrsche
- Backtracking.
Analyse von Laufzeit und Speicherbedarf:
- O-Notation
- Umwandlung von Rekursion in Iteration
Vorlesung
- Einführung
- Imperative Programmierung und Berechenbarkeit
- Anatomie eines imperativen Java-Programms
- Grundlagen von Programmiersprachen I (Einfache Typen, Ausdrücke, Typanpassung)
- Grundlagen von Programmiersprachen II (Anweisungen)
- Unterprogramme
- Klassen, Objekte, Typen
- Programmieren mit Objekten
- Ausnahmebehandlung
- Vererbung (Teil I, Teil II)
- Objektorientierte Programmiermethodik an Beispielen
- Methodik der Programmentwicklung (Teil I, Teil II, Teil III)
- Softwaretest
Übungsblätter
| # | Übungen | Lösungen |
|---|---|---|
| 1 | Übungsblatt 1 | Musterlösung 1 |
| 2 | Übungsblatt 2 | Musterlösung 2 |
| 3 | Übungsblatt 3 | Musterlösung 3 |
| 4 | Übungsblatt 4 | Musterlösung 4 |
| 5 | Übungsblatt 5 | Musterlösung 5 |
| 6 | Übungsblatt 6 | Musterlösung 6 |
| 7 | Übungsblatt 7 | Musterlösung 7 |
| 8 | Übungsblatt 8 | Musterlösung 8 |
| 9 | Übungsblatt 9 | Musterlösung 9 |
| 10 | Übungsblatt 10 | Musterlösung 10 |
| 11 | Übungsblatt 11 | Musterlösung 11 |
| 12 | Übungsblatt 12 | Musterlösung 12 |
| Klausur (nicht veröffentlicht) | Musterlösung der Klausur | |
| Nachklausur |