360.253 Applied Programming with C++
This course is in all assigned curricula part of the STEOP.
This course is in at least 1 assigned curriculum part of the STEOP.

2023S, VU, 2.0h, 3.0EC

Properties

  • Semester hours: 2.0
  • Credits: 3.0
  • Type: VU Lecture and Exercise
  • Format: Online

Learning outcomes

After successful completion of the course, students are able to:
... inspect modern C++ code.
... understand the core ideas guiding modern software development
... understand the language features available in C++17 and how to apply them.
... select appropriate functionality from the standard library to solve common problems.
... apply C++ to solve a problem in the scope of a project work.
... generate interfaces between C++ code and other languages (python).

Subject of course

The aim of this lecture is to understand the core principles of modern C++ and how to use them. This lecture will start at the very beginning ("Hello World!") and guide students to working on highly automated projects with several contributors, applying modern C++ to avoid common pitfalls encountered in large software projects.

Language features:
- Value Categories
- Value and Reference Semantics
- Functions
- User-defined types (Classes)
- Template Metaprogramming
- Function objects (lambda functions)

Features of the Standard library:
- Data containers
- Smart pointers
- Iterators
- Algorithms

From C++ code to an executable program:
- Compiling
- Linking
- Operating System libraries

Programming tools and frameworks covered in the course:
- Linux command line (bash)
- Version Control System (git)
- Build Systems (GNU Make, CMake)
- Testing Frameworks (CTest)
- Compiler toolchains (GCC, LLVM)

Teaching methods

The lecture will be held online. There are small weekly assignments which need to be handed-in. Finally, a self-assigned C++ project needs to be handed-in together with a written report.

 

Mode of examination

Written

Additional information

The TU-Chat is used for communications.

https://chat.tuwien.ac.at/channel/360.253.SS23

Lecturers

Institute

Course dates

DayTimeDateLocationDescription
Thu10:00 - 12:0002.03.2023 - 29.06.2023 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2p (LIVE)Lecture - virtual with recording
Applied Programming with C++ - Single appointments
DayDateTimeLocationDescription
Thu02.03.202310:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture - virtual with recording
Thu09.03.202310:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture - virtual with recording
Thu16.03.202310:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture - virtual with recording
Thu23.03.202310:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture - virtual with recording
Thu30.03.202310:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture - virtual with recording
Thu20.04.202310:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture - virtual with recording
Thu27.04.202310:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture - virtual with recording
Thu04.05.202310:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture - virtual with recording
Thu11.05.202310:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture - virtual with recording
Thu25.05.202310:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture - virtual with recording
Thu01.06.202310:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture - virtual with recording
Thu15.06.202310:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture - virtual with recording
Thu22.06.202310:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture - virtual with recording
Thu29.06.202310:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture - virtual with recording

Examination modalities

The final grade is based on the hand-in discussions (40%) from the weekly assignments and the final project (60%).

Course registration

Begin End Deregistration end
06.02.2023 00:00 16.03.2023 23:59 30.03.2023 00:00

Curricula

Study CodeObligationSemesterPrecon.Info
710 FW Elective Courses - Electrical Engineering Elective

Literature

No lecture notes are available.

Language

English