Inhalte: Es werden folgende Themen behandelt:
● Maschinelle Modellierung des Berechenbarkeitsbegriffs (Registermaschinen) und zentrale Imperative Programmierkonzepte.
● Nachweis der Eigenschaften von kleinen Programmen (Hoare-Kalkül und/oder wp-Kalkül).
● Objektorientierte Programmierkonzepte (wie Klassen, Objekte, Referenzen, Methoden, Vererbung, polymorphe
Typsysteme, Abstrakte Klassen, Schnittstellen, generische Klassendefinitionen, Kapselung, Fehlerbehandlung
usw.).
● Einfache Datenstrukturen und deren Implementierung unter Verwendung objektorientierter Programmiertechniken
sowie grundlegende Konzepte der Datenabstraktion.
● Vertiefte objektorientierte Modellierungstechniken und grundlegende Entwurfsmuster (Iteratoren, Beobachtermuster,
Strukturmuster, MVC usw.).
● Die Realisierung/Umsetzung der Konzepte werden anhand von modernen, gegenwärtig verwendeten, objektorientierten
Programmiersprachen vorgestellt.
Häufigkeit des Angebots: jedes Sommersemester.