360.050 Object-oriented programming
This course is in all assigned curricula part of the STEOP.
This course is in at least 1 assigned curriculum part of the STEOP.

2024S, VU, 4.5h, 7.0EC
TUWELLectureTube

Properties

  • Semester hours: 4.5
  • Credits: 7.0
  • Type: VU Lecture and Exercise
  • LectureTube course
  • Format: Presence

Learning outcomes

After successful completion of the course, students are able to select a suitable programming language (C or C++) based on the language properties and available tools in order to solve tasks under given framework conditions (e.g. platform, runtime, functionality). In addition, students learn how to design and implement programs in the system-oriented languages C and C++. A further aim is for students to be able to design tests for their own computer programs. Students will also learn how to make the most of language features to design functional and object-oriented interfaces.

Subject of course

In addition to introducing more general language aspects (types, variables, expressions, operators, loops, conditions, scopes, memory management and templates) in the C++20 and C11 language standards, the course content includes the following points:

1. Expressive design of function signatures (parameter types and return value)

  • Passing parameters as a copy or reference (pointer)
  • Passing parameters with write or read access
  • Provision of the result by means of a return value or reference parameter
  • Function templates

2. Expressive design of object interfaces

  • Construction and destruction
  • Classes without private data (aggregate types)
  • Classes with private data (and access via methods)
  • Abstract interface classes (base classes)
  • Class templates

3. Overview of the functionality in the standard libraries with a focus on

  • Character strings
  • Text output
  • File input and output
  • Algorithms (and their interfaces)

4. Runtime optimization and numerics

  • Floating point numbers (IEEE standards): Basic knowledge of the representation and reproducibility of results
  • Basic knowledge of compiler optimization mechanisms

5. Source code organization

  • Reproducibility of results (version management)
  • Formatting standards
  • Standards for commenting

Teaching methods

The course consists of lecture units as well as practical units which take place in the lecture hall. These are accompanied by weekly homework exercises to ensure successful learning outcomes. Furthermore, mandatory lab exercises are held in which code examples are implemented in the computer lab of the institute. In order to answer individual questions in the context of the homework, the LVA team offers weekly Q&A sessions which can be attended voluntarily.

Mode of examination

Written

Additional information

Consultation hours (organizational)
The next consultation hour is on:
May 13th, 2024
Location: CD 0519
Time: 2:00 p.m. to 4:00 p.m

For organizational questions: prog@iue.tuwien.ac.at

Lecturers

Institute

Course dates

DayTimeDateLocationDescription
Tue10:00 - 11:0005.03.2024 - 11.06.2024EI 7 Hörsaal - ETIT Hörsaaleinheit
Thu10:00 - 12:0007.03.2024 - 13.06.2024EI 7 Hörsaal - ETIT Hörsaaleinheit
Tue13:00 - 15:0009.04.2024Programmier-Labor Fragestunde
Thu13:00 - 15:0011.04.2024Programmier-Labor Fragestunde
Tue13:00 - 15:0023.04.2024Programmier-Labor Fragestunde
Thu13:00 - 15:0025.04.2024Programmier-Labor Fragestunde
Thu10:00 - 11:0002.05.2024EI 7 Hörsaal - ETIT Hörsaaleinheit
Tue13:00 - 15:0007.05.2024Programmier-Labor Fragestunde
Wed13:00 - 15:0008.05.2024Programmier-Labor Fragestunde
Wed13:00 - 15:0022.05.2024Programmier-Labor Fragestunde
Tue13:00 - 15:0028.05.2024Programmier-Labor Fragestunde
Tue13:00 - 15:0011.06.2024Programmier-Labor Fragestunde
Thu13:00 - 15:0013.06.2024Programmier-Labor Fragestunde
Object-oriented programming - Single appointments
DayDateTimeLocationDescription
Tue05.03.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Thu07.03.202410:00 - 12:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Tue12.03.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Thu14.03.202410:00 - 12:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Tue19.03.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Thu21.03.202410:00 - 12:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Tue09.04.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Tue09.04.202413:00 - 15:00Programmier-Labor Fragestunde
Thu11.04.202410:00 - 12:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Thu11.04.202413:00 - 15:00Programmier-Labor Fragestunde
Tue16.04.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Thu18.04.202410:00 - 12:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Tue23.04.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Tue23.04.202413:00 - 15:00Programmier-Labor Fragestunde
Thu25.04.202410:00 - 12:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Thu25.04.202413:00 - 15:00Programmier-Labor Fragestunde
Tue30.04.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Thu02.05.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Tue07.05.202410:00 - 11:00EI 7 Hörsaal - ETIT Hörsaaleinheit
Tue07.05.202413:00 - 15:00Programmier-Labor Fragestunde

Examination modalities

Written

Group dates

GroupDayTimeDateLocationDescription
Gruppe ATue13:00 - 15:3012.03.2024 - 18.06.2024Programmier-Labor 360.050 Object-oriented programming Gruppe A
Gruppe BTue16:00 - 18:3012.03.2024 - 18.06.2024Programmier-Labor 360.050 Object-oriented programming Gruppe B
Gruppe CWed13:00 - 15:3013.03.2024 - 17.04.2024Programmier-Labor 360.050 Object-oriented programming Gruppe C
Gruppe CThu13:00 - 15:3002.05.2024Programmier-Labor 360.050 Object-oriented programming Gruppe C
Gruppe CWed13:00 - 15:3015.05.2024 - 19.06.2024Programmier-Labor 360.050 Object-oriented programming Gruppe C
Gruppe DWed16:00 - 18:3013.03.2024 - 17.04.2024Programmier-Labor 360.050 Object-oriented programming Gruppe D
Gruppe DThu16:00 - 18:3002.05.2024Programmier-Labor 360.050 Object-oriented programming Gruppe D
Gruppe DWed16:00 - 18:3015.05.2024 - 19.06.2024Programmier-Labor 360.050 Object-oriented programming Gruppe D
Gruppe EThu13:00 - 15:3014.03.2024 - 18.04.2024Programmier-Labor 360.050 Object-oriented programming Gruppe E
Gruppe EFri13:00 - 15:3003.05.2024Programmier-Labor 360.050 Object-oriented programming Gruppe E
Gruppe EThu13:00 - 15:3016.05.2024Programmier-Labor 360.050 Object-oriented programming Gruppe E
Gruppe EFri13:00 - 15:3007.06.2024Programmier-Labor 360.050 Object-oriented programming Gruppe E
Gruppe EThu13:00 - 15:3020.06.2024Programmier-Labor 360.050 Object-oriented programming Gruppe E
Gruppe FThu16:00 - 18:3014.03.2024 - 18.04.2024Programmier-Labor 360.050 Object-oriented programming Gruppe F
Gruppe FFri16:00 - 18:3003.05.2024Programmier-Labor 360.050 Object-oriented programming Gruppe F
Gruppe FThu16:00 - 18:3016.05.2024Programmier-Labor 360.050 Object-oriented programming Gruppe F
Gruppe FFri16:00 - 18:3007.06.2024Programmier-Labor 360.050 Object-oriented programming Gruppe F
Gruppe FThu16:00 - 18:3020.06.2024Programmier-Labor 360.050 Object-oriented programming Gruppe F

Course registration

Use Group Registration to register.

Group Registration

GroupRegistration FromTo
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

Study CodeObligationSemesterPrecon.Info
033 235 Electrical Engineering and Information Technology Mandatory2. Semester
860 GW Optional Courses - Technical Mathematics Not specified

Literature

No lecture notes are available.

Preceding courses

Language

German