19307701
Vorlesung
SoSe 19: ProInformatik III: Objektorientierte Programmierung
Benjamin Güldenring
Zusätzl. Angaben / Voraussetzungen
Organisatorisches:
- Eine Anmeldung zum Kurs kann nur über Onlineanmeldung erfolgen!
- Neben den Vorlesungen (täglich 9:00-11:45 Uhr) finden nachmittags Übungen (13:00-15:30 Uhr) und Fragestunden (ab 15:30 Uhr) statt.
- In den Übungen besteht Anwesenheitspflicht.
- Klausurtermine: 8.8. (Python) und 22.8. (Java), jeweils 9:00
- Die Gesamtnote setzt sich aus den Ergebnissen der beiden Klausuren (jeweils 50%) zusammen.
- In der fünften Woche wird ein Programmierprojekt mit Gelegenheit zur Notenverbesserung durchgeführt.
Kommentar
In dieser Veranstaltung lernen die Teilnehmenden objektorientierte Konzepte anhand der Programmiersprachen Python und Java. Vorkenntnisse sind nicht erforderlich. Zum Abschluss wird ein Programmierprojekt durchgeführt.
Es werden folgende Themen behandelt:
- Einführung in die imperative Programmierung mit Python (Datentyp, Operator, Ausdruck, Variable, Zuweisung, Verzweigung, Schleifen, Prozeduren, Rekursion, Ein- und Ausgabe, Fehlerbehandlung)
- Grundlegende Algorithmen (Sortieralgorithmen, Geometrie) und Algorithmen-Typen (Teile und Herrsche, Backtracking)
- Laufzeitanalyse von kleinen Programmen und Korrektheitsbeweise mit dem Hoare-Kalkül
- Maschinelle Modellierung des Berechenbarkeitsbegriffs (Registermaschinen)
- Objektorientierte Programmierkonzepte (Klassen, Objekte, Referenzen, Methoden, Vererbung, polymorphe Typsysteme, Abstrakte Klassen, Schnittstellen, generische Klassendefinitionen, Kapselung)
- Einfache Datenstrukturen (einfach und doppelt verkettete Listen, Heap) und deren Implementierung sowie abstrakte Datentypen (Stapel, Schlange)
- Objektorientierte Modellierungstechniken und grundlegende Entwurfsmuster (Iteratoren, Beobachtermuster, Model-View-Controller usw.)
- Anwendung der Programmierkenntnisse in einem Projekt
25 Termine
Regelmäßige Termine der Lehrveranstaltung
Mo, 19.08.2019 08:00 - 12:00
Di, 20.08.2019 08:00 - 12:00
Mi, 21.08.2019 08:00 - 12:00
Do, 22.08.2019 08:00 - 12:00
Fr, 23.08.2019 08:00 - 12:00
Mo, 26.08.2019 08:00 - 12:00
Di, 27.08.2019 08:00 - 12:00
Mi, 28.08.2019 08:00 - 12:00
Do, 29.08.2019 08:00 - 12:00
Fr, 30.08.2019 08:00 - 12:00
Mo, 02.09.2019 08:00 - 12:00
Di, 03.09.2019 08:00 - 12:00
Mi, 04.09.2019 08:00 - 12:00
Do, 05.09.2019 08:00 - 12:00
Fr, 06.09.2019 08:00 - 12:00
Mo, 09.09.2019 08:00 - 12:00
Di, 10.09.2019 08:00 - 12:00
Mi, 11.09.2019 08:00 - 12:00
Do, 12.09.2019 08:00 - 12:00
Fr, 13.09.2019 08:00 - 12:00
Mo, 16.09.2019 08:00 - 12:00
Di, 17.09.2019 08:00 - 12:00
Mi, 18.09.2019 08:00 - 12:00
Do, 19.09.2019 08:00 - 12:00
Fr, 20.09.2019 08:00 - 12:00