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.

2022S, 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

Lecturers

Institute

Course dates

DayTimeDateLocationDescription
Thu10:00 - 12:0003.03.2022 - 23.06.2022 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2p (LIVE)Lecture
Applied Programming with C++ - Single appointments
DayDateTimeLocationDescription
Thu03.03.202210:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture
Thu10.03.202210:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture
Thu17.03.202210:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture
Thu24.03.202210:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture
Thu31.03.202210:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture
Thu07.04.202210:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture
Thu28.04.202210:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture
Thu05.05.202210:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture
Thu12.05.202210:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture
Thu19.05.202210:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture
Thu02.06.202210:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture
Thu09.06.202210:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture
Thu23.06.202210:00 - 12:00 https://bbb.iue.tuwien.ac.at/b/mar-0hh-8ik-a2pLecture

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
28.02.2022 00:00 17.03.2022 23:59 31.03.2022 00:00

Curricula

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

Literature

No lecture notes are available.

Language

English