Dr. Christian Dietrich
Pfahläckerweg 14
89081 Ulm
Tel: 0731/1754730
Fax: 0731/1754731
Mobil: 0179/8481747
www.excellent-data.de
dietrich@excellent-data.de

Short CVServicesTutorialsImpressionsImprint


Schulungen: (only in german)

Aufgrund meiner langjährigen Erfahrungen auf dem Gebiet des Softwaredesigns und der objektorientierten Softwareentwicklung biete ich kundenspezifische Inhouse-Schulungen an. Die Schulungen weisen folgende Merkmale auf:
  • Die Schulungen werden direkt beim Kunden durchgeführt.
  • Die Schulungen enthalten praxisnahe Beispiele.
  • Die Inhalte und die Dauer der Schulungen wird individuell an den Teilnehmerkreis angepasst.
  • Die Schulungen können projektbegleitend durchgeführt werden.
Für Fragen und Unterstützung im Projekt stehe ich auch nach der Schulung gerne zur Verfügung.

Übersicht

Objektorientiertes Softwaredesign: Konzepte der objektorientierten Programmierung
Objektorientiertes Softwaredesign: Entwurfsmuster (Design Patterns)
Plattformübergreifende Softwareentwicklung mit C++/Qt (Grundlagen)
Plattformübergreifende Softwareentwicklung mit C++/Qt (Fortgeschritten)


Objektorientiertes Softwaredesign: Konzepte der objektorientierten Programmierung

Mit einem ausgeklügelten Softwaredesign lässt sich die Entwicklungszeit verkürzen und gleichzeitig die Qualität der Software erheblich verbessern. Für die Umsetzung des Designs werden heutzutage objektorientierte Programmiersprachen wie C++, Java und C# eingesetzt, welche die Prinzipien der Objektorientierung ähnlich umsetzen. Die Schulung stellt die Konzepte der objektorientierten Programmierung (kurz OOP) allgemein vor und verdeutlicht diese anhand von Beispielprogrammen in der Programmiersprache C++ und/oder Java.

Voraussetzungen:Die Kenntnis einer höheren Programmiersprache ist hilfreich.
Zielgruppe:Anwendungsentwickler, die sich mit dem Thema Softwaredesign auseinandersetzen möchten.
Schulungsdauer:2 Tage

Inhalt der Schulung:
  • Kurze Einführung in die UML2
  • Begriffe: Objekte, Klassen, Friend-Klassen, Vererbung, ...
  • Generalisierung und Spezialisierung
  • Statischer und dynamischer Polymorphismus (Typ-Casting)
  • Überladen von Operatoren
  • Templates und Generics
  • Namensräume
  • Ausnahmebehandlung (Exception Handling)
Die Schulung vermittelt die Konzepte der objektorientierten Programmierung und die zugehörigen Kenntnisse in der Programmiersprache C++. Die Beispiele werden mit der Entwicklungsumgebung Eclipse oder Microsoft Visual Studio vorgestellt.

Objektorientiertes Softwaredesign: Entwurfsmuster (Design Patterns)

Mit einem ausgeklügelten Softwaredesign lässt sich die Entwicklungszeit verkürzen und gleichzeitig die Qualität der Software erheblich verbessern. Zusätzlich erhöhen Entwurfsmuster die Flexibilität, die Lesbarkeit und die Wiederverwendbarkeit Ihrer Software. Die Schulung vermittelt den praktischen Einsatz von Entwurfsmustern (engl. Design Patterns) die bewährte Lösungs-Schablonen für wiederkehrende Entwurfsprobleme in der Softwarearchitektur bereitstellen. Die Entwurfsmuster werden anhand von Programmbeispielen vorgestellt, die in der Programmiersprache C++ und/oder Java implementiert sind.

Voraussetzungen:Kenntnisse in der objektorientierten Programmierung (OOP).
Zielgruppe:Anwendungsentwickler, die sich mit dem Thema Entwurfsmuster auseinandersetzen möchten.
Schulungsdauer:3 Tage

Inhalt der Schulung:
  • Kurze Einführung in die UML2
  • Objektorientierte Analyse (OOA), Objektorientierter Entwurf (OOD)
  • Erzeugermuster (Creational Patterns)
  • Strukturmuster (Structural Patterns)
  • Verhaltensmuster (Behavioral Patterns)
  • Weitere Muster (Model-View Controller)
Die Schulung vermittelt ausgewählte Entwurfsmuster aus dem Buch "Entwurfsmuster. Elemente wiederverwendbarer objektorientierter Software" \et von Erich Gamma, Richard Helm, Ralph Johnson und John Vlissides, welches den "Software Productivity Award" gewonnen hat.

Plattformübergreifende Softwareentwicklung mit C++/Qt (Grundlagen)

Die Klassenbibliothek Qt ist für die plattformübergreifende Anwendungsentwicklung mit C++ schon seit langem eine feste Größe, denn mit Qt können Anwendungen komfortabel für Windows, Linux, Mac und für verschiedene Embedded-Systeme entwickelt werden. Prominente Beispiele für Qt-Anwendungen sind sowohl Open-Source Programme wie der Linux Desktop KDE als auch kommerzielle Produkte wie Google Earth, der Webbrowser Opera und Maemo.

Voraussetzungen:Grundkenntnisse der Programmiersprache C++
Zielgruppe:Anwendungsentwickler, die sich mit C++/Qt auseinandersetzen möchten.
Schulungsdauer:4 Tage

Inhalt der Schulung:
  • Überblick über die Technologie, die Eigenschaften und die Installation von Qt
  • Erstellung von plattformunabhängiger Software mit C++/Qt
  • Eventverarbeitung mit Signals und Slots
  • Effiziente Entwicklung mit Visual Studio und dem Qt Creator
  • Entwicklung grafischer Benutzeroberflächen mit Qt
  • Erstellung skalierbarer Dialoge mit dem Dialogdesigner von Qt
  • Erzeugung plattformunabhängiger Makefiles mit QMake
Weitere Infos siehe Artikel: Flexible Software in C++ gestalten.

Plattformübergreifende Softwareentwicklung mit C++/Qt (Fortgeschritten)

Die Klassenbibliothek Qt ist für die plattformübergreifende Anwendungsentwicklung mit C++ schon seit langem eine feste Größe, denn mit Qt können Anwendungen komfortabel für Windows, Linux, Mac und für verschiedene Embedded-Systeme entwickelt werden. Prominente Beispiele für Qt-Anwendungen sind sowohl Open-Source Programme wie der Linux Desktop KDE als auch kommerzielle Produkte wie Google Earth, der Webbrowser Opera und Maemo.

Voraussetzungen:Grundkenntnisse der Programmiersprache C++ und Qt.
Zielgruppe:Anwendungsentwickler, die sich vertieft mit C++/Qt auseinandersetzen möchten.
Schulungsdauer:4 Tage

Inhalt der Schulung:
  • Eventverarbeitung mit Signals und Slots
  • Entwicklung benutzerdefinierter Widgets und deren Integration in den Qt Designer
  • Model-View Ansatz für die Entwicklung graphischer Benutzeroberflächen
  • Unterstützung mehrsprachiger Anwendungen mit dem Qt Linguisten
  • Darstellung von Vektorgrafiken mit Qt
  • Multithreading und Thread-Synchronisation für plattformübergreifende Anwendungen
  • Unterstützung von Embedded-Systemen (Embedded Linux und Windows CE)
Weitere Infos siehe Artikel: Flexible Software in C++ gestalten.


Alle Workshops können individuell auf die Teilnehmer bzw. geplantes oder ein laufendes Projekt zugeschnitten werden.

Bitte kontaktieren Sie mich:

E-Mail: dietrich@excellent-data.de
Tel: 0731/1754730
Handy: 0179/8481747