700.016 (24W) Advanced Programming in C/C++

Wintersemester 2024/25

Anmeldefrist abgelaufen.

Erster Termin der LV
07.10.2024 11:45 - 13:15 S.0.05 On Campus
Nächster Termin:
09.12.2024 11:45 - 13:15 S.0.05 On Campus

Überblick

Lehrende/r
LV-Titel englisch Advanced Programming in C/C++
LV-Art Vorlesung-Kurs (prüfungsimmanente LV )
LV-Modell Präsenzlehrveranstaltung
Semesterstunde/n 2.0
ECTS-Anrechnungspunkte 2.0
Anmeldungen 32 (30 max.)
Organisationseinheit
Unterrichtssprache Deutsch
LV-Beginn 07.10.2024
eLearning zum Moodle-Kurs

Zeit und Ort

Liste der Termine wird geladen...

LV-Beschreibung

Intendierte Lernergebnisse

During this course we will explore advanced concepts and methods in the field of object-oriented programming. More specifically, we will extend our programming knowledge by utilizing the C++ language as a tool for development of complex applications.   

Lehrmethodik

The course will be divided into lectures and tutorial blocks.  The lecture block will be three weeks long and will provide the basic theoretical knowledge required to start with advanced object-oriented programming. 

Furthermore, the tutorial block will be 11 weeks long and will cover the topics presented below. 

Inhalt/e

1. Class definition and manipulation,  

2. Polymorphism and inheritance, 

3. STL

4. Headers, C++ Preprocessor and Macros,

5. Events handling,

6. Multi-threading in C++, 

7. Parallel, Distributed and Network processing in C++.

8. Templates

Literatur

Stroustrup, Bjarne. 2014. A Tour of C++. Upper Saddle River, NJ: Addison-Wesley.

Andrist, Björn, and Viktor Sehr. (2020) 2020. C++ High Performance. 2nd ed. Packt Publishing.

Frances Buontempo (2024) Learn C++ by Example: Covers Versions 11 to 23

Prüfungsinformationen

Im Fall von online durchgeführten Prüfungen sind die Standards zu beachten, die die technischen Geräte der Studierenden erfüllen müssen, um an diesen Prüfungen teilnehmen zu können.

Prüfungsmethode/n

Wöchentliche Aufgaben

Mitarbeit

Projekt in Teams von 2-3 Personen

Prüfungsinhalt/e

Beschriebene Inhalte

Beurteilungskriterien/-maßstäbe

Wöchentliche Aufgaben müssen in Moodle abgegeben werden, zumindest 51% (6 Wochen) müssen abgegeben werden.

Jedes Team präsentiert sein Projekt, Fragen kommen von Studierenden und dem Vortragenden. Auch diese Beurteilung muss positiv sein.

Beurteilungsschema

Note Benotungsschema

Position im Curriculum

  • Bachelorstudium Angewandte Informatik (SKZ: 511, Version: 19W.2)
    • Fach: Softwareentwicklung (Wahlfach)
      • 8.8 Softwareentwicklung ( 0.0h XX / 12.0 ECTS)
        • 700.016 Advanced Programming in C/C++ (2.0h VC / 2.0 ECTS)
          Absolvierung im 4., 5., 6. Semester empfohlen
  • Bachelorstudium Angewandte Informatik (SKZ: 511, Version: 19W.2)
    • Fach: Freie Wahlfächer (Freifach)
      • 11 Freie Wahlfächer ( 0.0h XX / 9.0 ECTS)
        • 700.016 Advanced Programming in C/C++ (2.0h VC / 2.0 ECTS)
          Absolvierung im 1., 2., 3., 4., 5., 6. Semester empfohlen
  • Bachelorstudium Angewandte Informatik (SKZ: 511, Version: 17W.1)
    • Fach: Freie Wahlfächer (Freifach)
      • Freie Wahlfächer ( 0.0h XX / 9.0 ECTS)
        • 700.016 Advanced Programming in C/C++ (2.0h VC / 2.0 ECTS)
  • Bachelorstudium Informationstechnik (SKZ: 289, Version: 22W.1)
    • Fach: Informationstechnische Vertiefung (Wahlfach)
      • 11a.3 Advanced Programming in C/C++ ( 0.0h VC / 2.0 ECTS)
        • 700.016 Advanced Programming in C/C++ (2.0h VC / 2.0 ECTS)
          Absolvierung im 3., 4., 5., 6. Semester empfohlen
  • Bachelorstudium Informationstechnik (SKZ: 289, Version: 22W.1)
    • Fach: Informationstechnische Vertiefung sowie mathematische Ergänzung (Wahlfach)
      • 10b.2 Advanced Programming in C/C++ ( 0.0h VC / 2.0 ECTS)
        • 700.016 Advanced Programming in C/C++ (2.0h VC / 2.0 ECTS)
          Absolvierung im 3., 4., 5., 6. Semester empfohlen
  • Bachelorstudium Informationstechnik (SKZ: 289, Version: 17W.1)
    • Fach: Informationstechnische Vertiefung (Wahlfach)
      • 10a.2 Programming in C/C++ ( 0.0h VC / 2.0 ECTS)
        • 700.016 Advanced Programming in C/C++ (2.0h VC / 2.0 ECTS)
          Absolvierung im 5. Semester empfohlen
  • Bachelorstudium Informationstechnik (SKZ: 289, Version: 17W.1)
    • Fach: Informationstechnische Vertiefung sowie mathematische Ergänzung (Wahlfach)
      • 10b.2.4 Programming in C/C++ ( 0.0h VC / 2.0 ECTS)
        • 700.016 Advanced Programming in C/C++ (2.0h VC / 2.0 ECTS)
          Absolvierung im 5. Semester empfohlen
  • Masterstudium Information and Communications Engineering (ICE) (SKZ: 488, Version: 15W.1)
    • Fach: Technical Complements (NC, ASR) (Wahlfach)
      • Wahl aus dem LV-Katalog (Anhang 5) ( 0.0h VK, VO, KU / 12.0 ECTS)
        • 700.016 Advanced Programming in C/C++ (2.0h VC / 2.0 ECTS)
  • Masterstudium Information and Communications Engineering (ICE) (SKZ: 488, Version: 15W.1)
    • Fach: Technical Complements (NC, ASR) (Wahlfach)
      • Wahl aus dem LV-Katalog (Anhang 5) ( 0.0h VK, VO, KU / 12.0 ECTS)
        • 700.016 Advanced Programming in C/C++ (2.0h VC / 2.0 ECTS)
  • Bachelorstudium Robotics and Artificial Intelligence (SKZ: 295, Version: 22W.1)
    • Fach: Design and Modeling Tools for Robotics (Wahlfach)
      • 8.2 Design and Modeling Tools for Robotics ( 0.0h VO, VC, UE, KS / 12.0 ECTS)
        • 700.016 Advanced Programming in C/C++ (2.0h VC / 2.0 ECTS)

Gleichwertige Lehrveranstaltungen im Sinne der Prüfungsantrittszählung

Wintersemester 2023/24
  • 700.016 VC Advanced Programming in C/C++ (2.0h / 2.0ECTS)
Wintersemester 2022/23
  • 700.016 VC Advanced Programming in C/C++ (2.0h / 2.0ECTS)
Wintersemester 2021/22
  • 700.016 VC Advanced Programming in C/C++ (2.0h / 2.0ECTS)
Wintersemester 2020/21
  • 700.016 VC Advanced Programming in C/C++ (2.0h / 2.0ECTS)
Wintersemester 2019/20
  • 700.015 VC Advanced Programming in C/C++ (2.0h / 2.0ECTS)
Wintersemester 2018/19
  • 700.015 VC Advanced Programming in C/C++ (2.0h / 2.0ECTS)