360.050 Objektorientiertes Programmieren
Diese Lehrveranstaltung ist in allen zugeordneten Curricula Teil der STEOP.
Diese Lehrveranstaltung ist in mindestens einem zugeordneten Curriculum Teil der STEOP.

2024S, VU, 4.5h, 7.0EC
TUWELLectureTube

Merkmale

  • Semesterwochenstunden: 4.5
  • ECTS: 7.0
  • Typ: VU Vorlesung mit Übung
  • LectureTube Lehrveranstaltung
  • Format der Abhaltung: Präsenz

Lernergebnisse

Nach positiver Absolvierung der Lehrveranstaltung sind Studierende in der Lage anhand der Spracheigenschaften und verfügbaren Werkzeuge eine passende Programmiersprache (C oder C++) auszuwählen, um Aufgabenstellungen unter gegebenen Rahmenbedingungen (z.B. Plattform, Laufzeit, Funktionalität) zu lösen. Darüber hinaus lernen die Studierenden, wie sie Programme in den systemnahen Sprachen C und C++ entwerfen und implementieren können. Ein weiteres Ziel ist es, dass die Studierenden in der Lage sind, Tests für ihre eigenen Computerprogramme zu entwerfen. Außerdem wird vermittelt, wie die Spracheigenschaften optimal genutzt werden können, um funktionale und objektorientierte Schnittstellen zu gestalten.

Inhalt der Lehrveranstaltung

Der Lehrinhalt umfasst neben der Einführung allgemeinerer Sprachaspekte (Typen, Variablen, Ausdrücke, Operatoren, Schleifen, Bedingungen, Gültigkeitsbereiche, Speicherverwaltung und Templates) in den Sprachstandards C++20 und C11 folgende Punkte:

1. Expressive Gestaltung von Funktionssignaturen (Parametertypen und Rückgabewert)

  • Übergabe von Parametern als Kopie oder Referenz (Zeiger)
  • Übergabe von Parametern mit Schreib- oder Lesezugriff
  • Bereitstellung des Ergebnisses mittels Rückgabewert oder Referenz-Parameter
  • Funktions-Templates

2. Expressive Gestaltung von Objektschnittstellen

  • Konstruktion und Destruktion
  • Klassen ohne private Daten (Aggregat-Typen)
  • Klassen mit privaten Daten (und Zugriff über Methoden)
  • Abstrakte Schnittstellenklassen (Basisklassen)
  • Klassen-Templates

3. Überblick über die Funktionalität in den Standardbibliotheken mit Fokus auf

  • Zeichenketten
  • Textausgabe
  • Datei Ein- und Ausgabe
  • Algorithmen (und deren Schnittstellen)

4. Laufzeitoptimierung und Numerik

  • Gleitkommazahlen (IEEE Standards): Basiswissen zur Darstellung und Reproduzierbarkeit von Ergebnissen
  • Basiswissen zu Optimierungsmechanismen des Compilers

5. Quellcode-Organisation

  • Reproduzierbarkeit von Ergebnissen (Versionsverwaltung)
  • Standards zur Formatierung
  • Standards zur Kommentierung

Methoden

Die Lehrveranstaltung besteht aus Vorlesungseinheiten sowie praktischen Einheiten, welche im Hörsaal abgehalten werden. Diese werden von wöchentlichen Hausübungen begleitet, um den Lernerfolg sicherzustellen. Des Weiteren werden verpflichtende Laborübungen abgehalten in welchen Codebeispiele im Computerlabor des Instituts implementiert werden. Um auf individuelle Fragen im Rahmen der Hausübungen einzugehen, bietet das LVA-Team wöchentliche Fragestunden, welche freiwillig besucht werden können.

Prüfungsmodus

Schriftlich

Weitere Informationen

Sprechstunde (organisatorisch)
Der nächste Termin ist am:
29. April 2024
Ort: CD 0519
Zeit: 14:00 bis 16:00 Uhr

E-Mail für organisatorische Fragen: prog@iue.tuwien.ac.at

Vortragende Personen

Institut

LVA Termine

TagZeitDatumOrtBeschreibung
Di.10:00 - 11:0005.03.2024 - 11.06.2024EI 7 Hörsaal - ETIT Hörsaaleinheit
Do.10:00 - 12:0007.03.2024 - 13.06.2024EI 7 Hörsaal - ETIT Hörsaaleinheit
Di.13:00 - 15:0009.04.2024Programmier-Labor Fragestunde
Do.13:00 - 15:0011.04.2024Programmier-Labor Fragestunde
Di.13:00 - 15:0023.04.2024Programmier-Labor Fragestunde
Do.13:00 - 15:0025.04.2024Programmier-Labor Fragestunde
Do.10:00 - 11:0002.05.2024EI 7 Hörsaal - ETIT Hörsaaleinheit
Di.13:00 - 15:0007.05.2024Programmier-Labor Fragestunde
Mi.13:00 - 15:0008.05.2024Programmier-Labor Fragestunde
Mi.13:00 - 15:0022.05.2024Programmier-Labor Fragestunde
Di.13:00 - 15:0028.05.2024Programmier-Labor Fragestunde
Di.13:00 - 15:0011.06.2024Programmier-Labor Fragestunde
Do.13:00 - 15:0013.06.2024Programmier-Labor Fragestunde
Objektorientiertes Programmieren - Einzeltermine
TagDatumZeitOrtBeschreibung
Di.05.03.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Do.07.03.202410:00 - 12:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Di.12.03.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Do.14.03.202410:00 - 12:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Di.19.03.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Do.21.03.202410:00 - 12:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Di.09.04.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Di.09.04.202413:00 - 15:00Programmier-Labor Fragestunde
Do.11.04.202410:00 - 12:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Do.11.04.202413:00 - 15:00Programmier-Labor Fragestunde
Di.16.04.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Do.18.04.202410:00 - 12:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Di.23.04.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Di.23.04.202413:00 - 15:00Programmier-Labor Fragestunde
Do.25.04.202410:00 - 12:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Do.25.04.202413:00 - 15:00Programmier-Labor Fragestunde
Di.30.04.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Do.02.05.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Di.07.05.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Di.07.05.202413:00 - 15:00Programmier-Labor Fragestunde

Leistungsnachweis

Schriflich

Gruppentermine

GruppeTagZeitDatumOrtBeschreibung
Gruppe ADi.13:00 - 15:3012.03.2024 - 18.06.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe A
Gruppe BDi.16:00 - 18:3012.03.2024 - 18.06.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe B
Gruppe CMi.13:00 - 15:3013.03.2024 - 17.04.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe C
Gruppe CDo.13:00 - 15:3002.05.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe C
Gruppe CMi.13:00 - 15:3015.05.2024 - 19.06.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe C
Gruppe DMi.16:00 - 18:3013.03.2024 - 17.04.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe D
Gruppe DDo.16:00 - 18:3002.05.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe D
Gruppe DMi.16:00 - 18:3015.05.2024 - 19.06.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe D
Gruppe EDo.13:00 - 15:3014.03.2024 - 18.04.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe E
Gruppe EFr.13:00 - 15:3003.05.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe E
Gruppe EDo.13:00 - 15:3016.05.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe E
Gruppe EFr.13:00 - 15:3007.06.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe E
Gruppe EDo.13:00 - 15:3020.06.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe E
Gruppe FDo.16:00 - 18:3014.03.2024 - 18.04.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe F
Gruppe FFr.16:00 - 18:3003.05.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe F
Gruppe FDo.16:00 - 18:3016.05.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe F
Gruppe FFr.16:00 - 18:3007.06.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe F
Gruppe FDo.16:00 - 18:3020.06.2024Programmier-Labor 360.050 Objektorientiertes Programmieren Gruppe F

LVA-Anmeldung

Die Anmeldung erfolgt über Gruppen-Anmeldung.

Gruppen-Anmeldung

GruppeAnmeldung VonBis
Gruppe A01.02.2024 12:0008.03.2024 09:00
Gruppe B01.02.2024 06:0008.03.2024 09:00
Gruppe C01.02.2024 06:0008.03.2024 09:00
Gruppe D01.02.2024 06:0008.03.2024 09:00
Gruppe E01.02.2024 06:0008.03.2024 09:00
Gruppe F01.02.2024 06:0008.03.2024 09:00

Curricula

StudienkennzahlVerbindlichkeitSemesterAnm.Bed.Info
033 235 Elektrotechnik und Informationstechnik Pflichtfach2. Semester
860 GW Gebundene Wahlfächer - Technische Mathematik Keine Angabe

Literatur

Es wird kein Skriptum zur Lehrveranstaltung angeboten.

Vorausgehende Lehrveranstaltungen

Sprache

Deutsch