C++











Objektorientierte Methoden mit C++



Aufbauend auf einem syntaktischen Grundverständnis von C und C++ werden objektorientierte Methoden erarbeitet, die für die Strukturierung der Architektur und des Entwurfs von Software wichtig sind. Dabei werden sprachliche und systematische Ansätze beleuchtet, die das Entwerfen von Klassen und Objektinteraktionen erleichtern und teilweise erst ermöglichen.
Der Kurs wird je zur Hälfte theoretisch und praktisch an Implementierungsbeispielen durchgeführt.


Themen:

  • Abgrenzung der Softwarearchitektur vom Entwurf
  • Grundlegende Begriffe der Objektorientierten Programmierung: Klasse, Objekt, Vererbung, Assoziation, Aggregation, Komposition, Methode, Schnittstelle etc.
  • Die Strukturen der OOP und ihre natürlichsprachliche Entsprechung
  • Polymorphie und ihre Anwendungsbereiche
  • Vererbung versus Aggregation
  • Grundprinzipien des Objektorientierten Designs
  • Kopplung, Kohäsion, Open/Close-Prinzip
  • Die Mehrfachvererbung und ihre Problembereiche
  • Ausführliche Diskussion der Themen
  • Eine kurze Exkursion zu den drei Amigos (UML)
  • Was sind Entwurfsmuster?
  • Zielsetzung und Anwendung von Entwurfsmustern
  • Diskussion der Entwurfsmuster Adapter, Singleton, Proxy, Facade, Bridge, Abstract Factory, Factory Method, Iterator, Command, Composite, Decorator, Observer, Visitor, State und anderer.

Für den praktischen Teil des Kurses wird ein C++ Compiler benötigt. Das kann ein beliebiger Compiler sein, der im günstigsten Fall auch noch ANSI/ISO-C++ konform ist.
Die Entwicklungsplattform - vorzugsweise Windows, Linux, MacOS X oder UNIX - sollte den Kursteilnehmern einigermaßen gut bekannt sein.