SoSe 2014













Submodule number Course Type Name ECTS SWS / Exam duration
0086cA.1.2.1 Lecture Object-oriented Programming for students with some knowledge of programming 0 3.0
0086cA.1.2.2 PC-based Seminar Objektorientierte Programmierung für Stud. mit Programmierkenntnissen: Seminar am PC 0 2.0
0086cA.1.2.3 Module exam Object-oriented Programming for students with some knowledge of programming 8 120 min
Qualifikationsziele: Die Studentinnen und Studenten beherrschen am Ende des Moduls imperative und objektorientierte Programmierkonzepte und deren Anwendbarkeit und können objektorientierte Modelle erstellen. Sie kennen grundlegende Datenstrukturen und Algorithmen und sind in der Lage, abstrakte Datentypen zu spezifizieren und zu implementieren. Sie kennen grundlegende Datenstrukturen und Algorithmen und können die Eigenschaften von kleinen Programmen formal und informell beweisen. Sie können objektorientierte Programme implementieren und dabei Entwurfsmuster problemadäquat einsetzen.

Inhalte: Dieses Modul richtet sich an Studentinnen und Studenten, deren Einstufungstest Vorkenntnisse in einer objektorientierten Programmiersprache nachweist. 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.