HOME | ENGLISH | IMPRESSUM | KIT

Fortgeschrittene Objektorientierung

Voraussetzungen

Vordiplom, Kenntnisse in Softwaretechnik und Java.

Inhalt

Die Vorlesung ist keine Veranstaltung über objektorientierte Softwareentwicklung. Vielmehr behandelt sie theoretische Grundlagen, Implementierungstechniken, und aktuelle Entwicklungen im Bereich objektorientierter Programmiersprachen.

Themen

  • Einleitung
  • Kurzportraits wichtiger OO-Sprachen
  • Tücken der dynamischen Bindung
  • Mehrfachvererbung
  • Der vtable-Mechanismus
  • Überladungen
  • Verhaltenskonformanz
  • Generische Klassen
  • Innere Klassen
  • Event Handling
  • Refaktorisierung
  • Fortgeschrittene Design Patterns
  • Aspektorientierte Programmierung
  • Traits und Mixins
  • Virtuelle Klassen
  • Cardelli Typsystem
  • Palsberg-Schwartzbach Typinferenz
  • Analyseverfahren
  • Ownership Types
  • Semantik
  • Bytecode, JVM
  • Garbage Collection

Termine

vom 20.04.2009, bis 24.07.2009

Tag Beginn Ende Ort
Montag 14:00h 15:30h R -101, 50.34
Freitag 9:45h 11:15h R -101, 50.34

Hinweis zum Termin am Freitag

Die Vorlesung am Freitag ist in der Regel einstündig von 9:45 Uhr bis 10:30 Uhr. Abweichungen von dieser Regelung entnehmen Sie bitte aus der unten aufgeführten Auflistung der einzelnen Termine.

Veranstaltungen

Datum Zeit Ort Thema Unterlagen
Mo. 20.04. 14:00h - 14:15h R -101, 50.34 Organisatorisches (nur ca. 15 Min.)
Fr. 24.04. 9:45h - 11:15h R -101, 50.34 Einleitung [PDF]
Mo. 27.04. 14:00h - 15:30h R -101, 50.34 Tücken der dynamischen Bindung [PDF]
Mo. 04.05. 14:00h - 15:30h R -101, 50.34 Mehrfachvererbung [PDF]
Fr. 08.05. 9:45h - 10:30h R -101, 50.34 Vortrag: C++ - Eine Übersicht [PDF]
Mo. 11.05. 14:00h - 15:30h R -101, 50.34 Der vtable-Mechanismus [PDF]
Fr. 15.05. 9:45h - 10:30h R -101, 50.34 Vortrag: Java - Eine Übersicht [PDF]
Mo. 18.05. 14:00h - 15:30h R -101, 50.34 Überladungen [PDF]
Fr. 22.05. 9:45h - 10:30h R -101, 50.34 Entfällt
Mo. 25.05. 14:00h - 15:30h R -101, 50.34 Invarianten und sichere Vererbung [PDF]
Fr. 29.05. 9:45h - 10:30h R -101, 50.34 Vortrag: C# - Eine kurze Einführung [PDF]
Mo. 01.06. 14:00h - 15:30h R -101, 50.34 Feiertag
Fr. 05.06 9:45h - 11:15h R -101, 50.34 Invarianten / Gen. Klassen (Doppelstunde) [PDF]
Mo. 08.06. 14:00h - 15:30h R -101, 50.34 Generische Klassen/ Innere Klassen [PDF]
Fr. 12.06 9:45h - 10:30h R -101, 50.34 Entfällt
Mo. 15.06. 14:00h - 15:30h R -101, 50.34 Vortrag: Smalltalk - Eine kurze Einführung [PDF]
Fr. 19.06 9:45h - 11:15h R -101, 50.34 Event Handling, Visitor Pattern [PDF][PDF]
Mo. 22.06. 14:00h - 15:30h R -101, 50.34 Mixins, Traits und Virtuelle Klassen [PDF][PDF]
Fr. 26.06 9:45h - 10:30h R -101, 50.34 Aspektorientierte Programmierung [PDF]
Mo. 29.06. 14:00h - 15:30h R -101, 50.34 Das Cardelli-Typsystem [PDF]
Fr. 03.07 9:45h - 11:15h R -101, 50.34 Cardelli-Typsystem / Generizität [PDF]
Mo. 06.07. 14:00h - 15:30h R -101, 50.34 Generizität / Palsberg-Schwartzbach [PDF]
Fr. 10.07 9:45h - 11:15h R -101, 50.34 Analyseverfahren [PDF]
Mo. 13.07. 14:00h - 15:30h R -101, 50.34 Entfällt
Fr. 17.07 9:45h - 11:15h R -101, 50.34 Analyseverfahren cont.
Mo. 20.07. 14:00h - 15:30h R -101, 50.34 Semantik [PDF]
Fr. 24.07 9:45h - 11:15h R -101, 50.34 JVM und Bytecode [PDF]

Zusätzliches Material

Thema Unterlagen
Refactoring [PDF]
KABA [PDF]

Veranstalter

Lehrstuhlinhaber
Prof. Gregor Snelting