Inhaltsbeschreibung/Content Description

deutsch: Die Vorlesung vermittelt die grundlegenden Konzepte und Methoden der objektorientierten Programmierung (OOP). Eine beispielhafte Umsetzung wird mittels der objektorientierten Programmiersprache C++ (als Erweiterung von C) vorgestellt.
Im Einzelnen werden behandelt:
allgemein: Einführung in Konzepte und Methoden der objektorientierten Software-Entwicklung - Objekt, Attribut, Identität, Zustand, Verhalten, Nachricht, Nachrichtenaustausch, Klasse, Operation, Abstraktion, Generalisierung, Datenkapselung, setter- und getter-Methoden, Modularität, ist-ein- und Teil-von-Hierarchie, Typisierung, Polymorphismus, Konkurrenz und Existenz, UML-Klassen- und -Sequenz-Diagramme.
C++: Klasse, Objektvariable, Member, Zugriffsschutzmechanismen, Konstruktoren, Destruktoren, dynamische Speicherreservierung, Überladen von Funktionen und Operatoren, Datenströme, einfache und mehrfache Vererbung, statisches und dynamisches Binden, virtuelle Funktion, virtuelle Basisklasse, Ausnahmebehandlung, Namensräume, Einführung in die generische Programmierung über Templates für Funktionen und Klassen, Anwendungsbeispiele.
english: The lectures introduces the basic concepts and methods of object oriented programming (OOP). Example implementations are done in the programming language C++ (as an extension to C).
The following topics are presented:
generell: introduction into concepts and methods of the object oriented software development: object, attribute, identity, status, behaviour, message, message exchange, class, operation, abstraction, generalisation, encapsulation, setter and getter operations, modularity, is-a- and part-of-hierarchy, typing, polymorphism, concurrency and existence, UML class and sequence diagrams.
C++: class, object variable, member, access protection, constructors, destructors, dynamic memory allocation, overloading of functions and operators, streams, single and multiple inheritance, static and dynamic binding, virtual function, virtual base class, exception handling, name spaces, introduction into generic programming by functions and class templates, application examples.

Turnus/Cycle

deutsch: jeweils im Wintersemester. Beginn im WS 2021/2022 am Dienstag, 12.10.2021. Ob die Veranstaltung in Präsenz oder aufgrund der Corona-Pandemie online angeboten wird, steht zum derzeitigen Zeitpunkt noch nicht fest. Für die Teilnahme an dieser Veranstaltung müssen Sie ein zweistufiges Verfahren durchlaufen. Im ersten Schritt loggen Sie sich bitte im LSF ein und belegen diesen Kurs. Kurz vor Beginn der Veranstaltung online erhalten Sie dann den Einschreibungsschlüssel zum Moodle-Kurs via Email.
english: in each winter semester. Start in WS 2021/2022 on Tuesday, October 12th, 2021. Whether the lecture will take place in presence or online due to the Corona pandemic is not clear at this time point. You have to apply for the lecture in a two step method. First log-in to LSF and apply for this lecture. Shortly before the first lecture starts online you will receive the Moodle enrolment key by email.
 

Material zur Vorlesung und Übung/Material for the Lecture and Exercises

deutsch: Sie finden das gesamte Material in Moodle (der Zugangsschlüssel zu dem jeweiligen Kurs im jeweiligen Semester wird in der Vorlesung und Übung bekannt gegeben, nicht per eMail oder Telefon).
english: The complete material is offered within Moodle (the enrolment key for the respective Moodle course and semester is published in the lecture and exercises, not by email or phone.).