Hasso-Plattner-Institut25 Jahre HPI
Hasso-Plattner-Institut25 Jahre HPI
 

Systems Engineering and Data Processing with C++ (Sommersemester 2021)

Lecturer: Prof. Dr. Jürgen Döllner (Computergrafische Systeme) , Willy Scheibel (Computergrafische Systeme) , Jan Ole Vollmer (Computergrafische Systeme)

General Information

  • Weekly Hours: 4
  • Credits: 6
  • Graded: yes
  • Enrolment Deadline: 18.03.2021 - 09.04.2021
  • Teaching Form: Lecture / Exercise
  • Enrolment Type: Compulsory Elective Module
  • Course Language: German

Programs, Module Groups & Modules

IT-Systems Engineering MA
  • IT-Systems Engineering
    • HPI-ITSE-E Entwurf
  • IT-Systems Engineering
    • HPI-ITSE-K Konstruktion
  • OSIS: Operating Systems & Information Systems Technology
    • HPI-OSIS-K Konzepte und Methoden
  • OSIS: Operating Systems & Information Systems Technology
    • HPI-OSIS-T Techniken und Werkzeuge
  • OSIS: Operating Systems & Information Systems Technology
    • HPI-OSIS-S Spezialisierung
  • SAMT: Software Architecture & Modeling Technology
    • HPI-SAMT-K Konzepte und Methoden
  • SAMT: Software Architecture & Modeling Technology
    • HPI-SAMT-T Techniken und Werkzeuge
  • SAMT: Software Architecture & Modeling Technology
    • HPI-SAMT-S Spezialisierung
Data Engineering MA

Description

Die Vorlesung "Systems Engineering and Data Processing with C++" bietet eine technische Vertiefung der Industrieprogrammiersprache C++ an forschungs- und industrienahen Anwendungsfällen im Bereich des Designs, der Implementierung und dem Betrieb von großen Softwaresystemen und der massiven Datenprozessierung.

Die Themen der Vorlesung umfassen:

  • Kurzabriss Grammatiken, Paradigmen, Ausdrücke, Operatoren und die Standardbliothek
  • Objekte, Lebenszeit, Speicher und Speichermanagement
  • Typen, Klassen, Interfaces, Polymorphie, Namensräume, Module, APIs
  • Container und Strings
  • Algorithmen und Funktionale Programmierung
  • Fehlerbehandlung, Systemintegration und Utilities
  • Cross-Platform Entwicklung, Interoperabilität und Deployment

Die Vorlesung wird von einer Übung mit einem voraussichtlich zweiwöchentlichen Turnus begleitet.

 

Die Teilnehmer der Vorlesung nach dieser Vorlesung in der Lage sein:

  • Bestehende Anwendungen und Algorithmen in C++ zu verstehen und zu adaptieren, sowie diese in modernes C++ zu überführen
  • Modernes C++, seine Standardbibliothek und C++-basierte Abhängigkeiten für die Entwicklung von komplexen Datenstrukturen, Algorithmen und ganzen IT-Systemen zu verwenden
  • Konzepte aus C++ in anderen Programmiersprachen zu erkennen und anzuwenden
  • C++ Software von einfacher Bereitstellung von Algorithmen und Datenstrukturen, über Bibliotheken, bis hin zu komplexen Softwaresystemen anwendbar und wiederverwendbar bereitzustellen.

Requirements

Die Vorlesung setzt Grundkenntnisse in C++ oder einer anderen, objektorienterten Programmiersprache (Java, Smalltalk) bzw. einer systemnahen Programmiersprache (C, Rust) voraus. Kenntnisse in Programmiertechniken und -paradigmen werden ebenso vorausgesetzt, sowie ein Abschluss gleichwertig einem Bachelor of Science im Bereich IT-Systems Engineering oder einer vergleichbaren Disziplin, z.B. Computer Science oder Informatik.

Literature

Für einen Einstieg und eine Vertiefung in C++ empfehlen wir folgende Literatur:

  • Bjarne Stroustrup: “The C++ Programming Language”, Addison-Wesley Professional, ISBN 978-0321563842
  • Bjarne Stroustrup: “A Tour of C++”, Addison-Wesley Professional, ISBN 978-0321958310
  • Scott Meyers: “Effective Modern C++”, O’Reilly Media, ISBN 978-1491903995
  • John Lakos: “Large-Scale C++ Software Design”, Addison-Wesley Professional, ISBN 978-0201633627

Learning

Die Kommunikationsplattform für die Vorlesung ist das HPI-zentrale Moodle System. Das Skript der Vorlesung und auch die Übungsaufgaben werden dort bereitgestellt und zur Bewertung eingereicht. Das Moodle wird auch für Diskussionsforen und Ankündigungen benutzt werden.

Examination

Die Leistungserfassung besteht aus benoteten Übungsabgaben innerhalb der Vorlesungszeit (voraussichtlich zweiwöchentlicher Turnus) und einer schriftlichen Abschlussklausur im Anschluss an die Vorlesungszeit.

Durch die erfolgreiche Bearbeitung der Übungsaufgaben können Bonuspunkte erhalten werden, die in der Klausur als volle Klausurpunkte angerechnet werden.

Wir behalten uns vor, die schriftliche Klausur als Online-Klausur durchzuführen.

Dates

Die Vorlesung und auch die Übungstermine werden über Zoom abgehalten. Derzeit sind zwei wöchentliche Termine geplant:

  • Montags 11:00 Uhr - 12:30 Uhr
  • Donnerstags 09:15 Uhr - 10:45 Uhr

Der erste Termin ist der 12.04.2021 um 11:00 Uhr. Details zur Einwahl im Zoom sind im Moodle verfügbar.

Zurück