Fortgeschrittene objektorientierte Programmierung
LVA 185.211, VU, 3 Ects, 2012 S
Fortgeschrittene objektorientierte Programmierung
(Vorlesung mit Übung im Umfang von 3 Ects)
Ziele:
Die Teilnehmer sollen fortgeschrittene Techniken der objektorientierten Programmierung kennenlernen und zwischen erfolgversprechenden und kaum zielführenden oder gefährlichen Einsatzmöglichkeiten objektorientierter Konzepte unterscheiden lernen.
Weiters sollen die Teilnehmer in die Lage versetzt werden, Unzulänglichkeiten aktueller Programmiersprachen durch Verwendung geeigneter Programmiertechniken zu überwinden.
Inhalt:
Anhand mehrerer objektorientierter Programmiersprachen (Java, C# oder C++ sowie Eiffel und Smalltalk) werden unter anderem folgende Themen behandelt:
- Namen als Abstraktionsmittel und Umgang mit Namenskonflikten
- Ersetzbarkeit versus Generizität
- Umgang mit kovarianten Problemen und parallelen Klassenhierarchien
- Implementierung objektorientierter Sprachen
- ausgewählte Entwurfsmuster
Didaktische Vorgehensweise:
In einem Vorlesungsteil werden die Grundlagen vermittelt.
Drei in Kleingruppen zu lösende Programmieraufgaben (eine in einer üblichen stark typisierten objektorientierten Sprache, eine in Eiffel und eine in Smalltalk) sollen das Gelernte veranschaulichen und verinnerlichen.
Neben den vorgegebenen Lehrinhalten werden auch einige von den Teilnehmern selbst vorgeschlagene Aspekte des Themas behandelt.
Voraussetzungen:
Vorausgesetzt werden
- gute Kenntnisse der objektorientierten Programmierung in Java, C#, C++ oder ähnlichen Sprachen
- Erfahrungen im Umgang mit Ersetzbarkeit (Untertypbeziehungen) und Generizität
- Wissen über Design by Contract und den prinzipellen Einsatz von Software-Entwurfsmustern
- individuelle praktische Programmiererfahrungen
Diese Voraussetzungen sind im Wesentlichen beispielsweise nach der erfolgreichen Teilnahme an
Objektorientierte Programmiertechniken erfüllt, idealerweise ergänzt durch praktische Programmiererfahrungen, die in anderen Lehrveranstaltungen (abgesehen von in die Programmierung einführenden Lehrveranstaltungen), in eigenen Projekten oder durch berufliche Tätigkeiten gesammelt wurden.
Lehrbehelfe:
Es gibt kein Skriptum.
Folien zur Vorlesung sowie die Programmieraufgaben stehen hier bereit:
- Folien vom 09.03.2012
- Folien vom 16.03.2012
- Folien vom 23.03.2012
- Folien vom 30.03.2012
- Folien vom 20.04.2012
- Folien vom 27.04.2012
- 1. Aufgabe (Spiel)
- 2. Aufgabe (Spiel in Smalltalk)
- 3. Aufgabe (Spiel in Eiffel)
Zeit und Ort:
Vorlesungstermine sind freitags vom 9. März bis 27. April 2012 (außer in den Osterferien, insgesamt 6 Termine) jeweils von 10:00 bis 12:00 Uhr im EI 3A (Gußhausstr. 25-29, 2. OG).
Eine kurze Vorbesprechung findet zu Beginn der ersten Vorlesung statt.
Die Gruppeneinteilung für den Laborübungsteil erfolgt am 16. März am Rande der Vorlesung.
Anmeldung:
Anmeldungen zur Lehrveranstaltung sind bis spätestens 15. März über
TISS erforderlich.
Anrechenbarkeit:
Fortgeschrittene objektorientierte Programmierung
ist für folgende Magisterstudien anrechenbar:
- für
Software Engineering & Internet Computing
im Modul Computersprachen und Programmierung
- für
Computational Intelligence
im Modul Programming Languages and Verification
- für
Informatikdidaktik
im Modul Programmiersprachen
Beurteilung:
Die Beurteilung setzt sich je zur Hälfte aus den Leistungen bei der Laborübung (die in Gruppen von 2 bis 4 Personen durchzuführen ist) und dem Ergebnis einer mündlichen Prüfung zusammen, wobei beide Teile positiv sein müssen; sonst ist die Gesamtbeurteilung negativ.
Die Beurteilung des Laborübungsteils erfolgt bei einem Abgabegespräch, bei dem die Lösungen der drei gestellten Programmieraufgaben einer Übungsgruppe diskutiert werden.
Das Abgabegespräch muss von jeder Übungsgruppe bis spätestens Ende Juni 2012 abgelegt werden, die mündliche Prüfung (für jeden Teilnehmer getrennt) bis spätestens Ende Jänner 2013.
Die Gesamtbeurteilung ist negativ, wenn bis zu diesen Terminen kein Abgabegespräch bzw. keine Prüfung positiv abgelegt wird.
Prüfungen werden (außer in der vorlesungsfreien Zeit) jeden Montag von 11 bis 12 Uhr und nach Vereinbarung abgehalten.
Die Anmeldung zu einer Prüfung soll mindestens eine Woche vor dem gewünschten Prüfungstermin erfolgen, am besten per eMail.
Sowohl Abgabegespräch als auch Prüfung können bei negativer Beurteilung innerhalb des vorgesehenen Zeitraums höchstens einmal wiederholt werden bevor die Gesamtbeurteilung erfolgt.
Vortragender:
Franz Puntigam
Tel.: 58801/18514
franz@complang.tuwien.ac.at