Prof. Dr. Bernd Fröhlich
Dipl.-Medsys.wiss. Andreas-Christoph Bernstein
Dipl.-Medsys.wiss. André Schollmeyer
Inhalt
Das Ziel dieser Veranstaltung ist die Kenntnis und Beherrschung der wesentlichen Konzepte imperativer und moderner objektorientierter Programmiersprachen am Beispiel von C++11. Zentrale Themen der Vorlesung sind: Klassen und Klassenhierarchien, Übergabe- und Rückgabemechanismen für Funktionen und Methoden, const correctness, Speicherverwaltung und Zeiger sowie generische Programmierung.
Die Übungen bieten den Teilnehmern die Möglichkeit den Vorlesungsstoff anhand von konkreten Aufgaben und einem abschließenden Projekt zu vertiefen. Als Programmiersprache wird C++ eingesetzt.
Description
This course focuses on the fundamental paradigms and concepts of imperative and modern object-oriented programming languages. The accompanying lab course allows students to practice the techniques, develop short programs and design and implement a basic ray-tracing system.
Aktuelles
Auffrischungskurs zu Programmiergrundlagen
In der ersten und zweiten Aprilwoche bieten wir einen Intensivkurs zur Auffrischung grundlegender Programmierkenntnisse und zur Einführung in die prozeduralen Grundlagen von C++ an. Wir schreiben dazu einige Beispielprogramme, kompilieren diese und führen sie anschließend aus. Wir schauen uns dazu einige von C++ angebotene Datentypen und Kontrollstrukturen an. Außerdem schreiben wir einfache Funktionen und lassen uns Ergebnisse ausgeben. Dieser Kurs ist für die Teilnehmer der Vorlesung Programmiersprachen gedacht. Die Teilnahme am Kurs ist freiwillig.
Termine:
- 31.03.2014 15:15 - 16:45 Uhr
- 02.04.2014 15:15 - 16:45 Uhr
- 07.04.2014 15:15 - 16:45 Uhr
- Ort: B11 LiNT-Pool
Ort: Bauhausstr.11, LiNT-Pool über den Garagen
C++-Talks on the Web
Termine und Ort
- Vorlesung
- Termin: Dienstag, 15:15 - 16:45 Uhr
- Erster Termin: 8. April 2014
- Ort: SR 015, B11
- Pflichtübungen (Bauhausstr. 11, LiNT-Pool)
- Montag 15:15 - 16:45 Uhr (Gruppe I)
- Montag 17:00 - 18:30 Uhr (Gruppe II)
- Erster Termin: 14. April 2014
- Anmeldung und Terminvergabe per Email: maria-theresa.hansens@uni-weimar.de
- Freiwillige Übungen (Bauhausstr. 11, LiNT-Pool)
- Mittwoch 15:15 - 16:45 Uhr
- Erster Termin: 16. April 2014
- Auffrischungskurs zu Programmiergrundlagen
- 31.03.2014 15:15 - 16:45 Uhr
- 02.04.2014 15:15 - 16:45 Uhr
- 07.04.2014 15:15 - 16:45 Uhr
- Ort: B11 LiNT-Pool
Prüfungstermine
- 15. Juli bis 6. August 2014: Anmeldung per Email bei dem Lehrenden bis 10 Tage vor dem gewünschten Prüfungstermin. Bitte machen Sie einem Terminvorschlag, der mit ihren anderen Prüfungen harmoniert.
- 11. bis 17. September 2014: Anmeldung bis zum 1. September bei Frau Hansens (maria-theresa.hansens [at] uni-weimar.de)
- Der zweite Prüfungszeitraum sollte bevorzugt genutzt werden, da dann das Ray-Tracing-Projekt abgeschlossen sein sollte.
- Alle Prüfungen finden mündlich statt. Die Prüfung dauert ca. 30 Minuten.
- Alle Prüfungen finden in Raum 117, Bauhausstr. 11 statt.
Schein
Umfang
- 6 ECTS, V2/Ü3
- Modul: Software I
- Richtet sich an:
- Bachelor, 2. Semester Medieninformatik
- Voraussetzung zur Teilnahme an der Veranstaltung
- Einführung in die Informatik
Anforderungen
- Mündliche Abschlussprüfung
- Teilnahme an den Pflichtübungen
- Abschlussprojekt
- 60% der Punkte aus den Übungsaufgaben sind Voraussetzung zur Zulassung zur mündlichen Prüfung.
- Die Endnote setzt sich zusammen aus
- 2/3 Note der mündlichen Abschlussprüfung (muss bestanden sein)
- 1/3 Übungsnote (mind. 60% zur Prüfungszulassung)
- Die Note für die Übung ergibt sich durch die Anzahl erreichter Punkte aller Aufgaben (inkl. Zusatzaufgaben) anhand folgendem Schlüssel:
Note Prozent Übungspunkte
1.0 >= 95
1.1 [95 - 94)
1.2 [94 - 93)
...
3.9 [67 - 66)
4.0 [66 - 60)
Hinweis: Für Studenten, die im Bachelor-Studiengang Mediensysteme (vor PV29) immatrikuliert sind, erfolgt eine Rundung auf .0, .3 bzw. .7.
Dokumente
Vorlesungen SS2014
- Einführung (8. April 2014)
- Grundlagen der Objektorientierung (8. April 2013)
- Klassen (15.04.2014) - update 22.04.2014
- Datentransferobjekte und uniform initialization Syntax (22.04.2014)
- Parameterübergabe- und Rückgabemechanismen (22.04.2014)
- Templates (29.04.2014)
- STL I (6. Mai 2014)
- STL II (13. Mai 2014)
- STL III (20. Mai 2014)
- Speicherverwaltung und Zeiger (27. Mai 2014)
- Verwaltung dynamischer Ressourcen (3. Juni 2014 - update 10. Juni)
- Smart Pointer (10. Juni 2014)
- Vererbung I (10. Juni 2014)
- Vererbung II (17. Juni 2014)
- Benutzung von Vererbung (24. Juni 2014)
- Ueberladen, Ueberschreiben, Verdecken (24. Juni 2014)
- Javascript (1. Juli 2014)
- Klassendesign (8. Juli 2014)