Back To Top

Java - Design Patterns

DruckansichtDruckansicht

  • Dauer:
    3 Tage
  • Zielgruppe:
    Programmierer, Web-Entwickler
  • Vorkenntnisse:
    Java-Grundlagen
  • Methode:
    Vortrag, Diskussion, Einzel- und Gruppenarbeit mit Übungen. Eigene Arbeiten und Projektfragen können in das Seminar eingebracht werden.
  • Typ:
    Öffentliches Seminar / Inhouse
  • Kursnummer:
    1015031
  • Download
    Anmeldeformular | AGB | Info-Broschüre
Themen:
Mit Hilfe von Entwurfsmustern schafft man Ordnung und Klarheit bei der Erarbeitung und Lösung immer wiederkehrender Probleme und Herausforderungen im Softwaredesign. Dieser Kurs vermittelt speziell für den Java-Programmierer die Kerntheorie der Entwurfsmuster und wendet sie mit vielen Beispielen auf konkrete Softwareprobleme an.

Inhalte

A. Grundlagen

Einsatz und Nutzen von Entwurfsmuster- Unterscheidung in die Typen: verhaltens-, Struktur- und Erzeugungsmuster - Auffinden von Programmbereichen und Ausführungssituationen, in denen ein Entwurfsmuster Vorteile bringt

B. Verhaltensmuster

Observer: Verwendung, um eine Menge von Klasse über Änderungen zu informieren - Mediator: Vereinfachung der Kommunikation zwischen Klassen durch Einsatz einer Zwischen-Klasse - Chain of Responsibility: Nachrichtenaustausch - Template : Abstrake Definition eines Algorithmus - Interpreter: Integration von Sprachelementen in einem Programm - Strategy: Kapselung eines Algorithmus in einer Klasse - Visitor: Hinzufügen von Funktionalitäten zu einer Klasse - State: Gedächtnis für die Instanzvariablen einer Klasse - Command: Trennung von Ausführung und Programmaufruf der Umgebung - Iterator: Formalisierung der Adressierung von Daten in einer Klasse

C. Strukturmuster

Adapter: Veränderung der Schnittstellen einer Klasse zu denen einer anderen Klasse - Bridge: Beibehaltung der Schnittstellen des Client-Programms, während die Klasse geändert wird - Composite: Objektsamlung, welche zusammengesetzte oder einfache Objekte enthält - Decorator: Umhüllung einer gegebenen Klasse, um neue Fähigkeiten hinzuzufügen und die unveränderten Methode der unterliegenden Klasse zu übergeben - Façade: Gruppierung komplexer Objekte und Herstellung einfacherer Nutzungspfade - Flyweight: Begrenzung der Zurverfügungstellung kleiner, ähnlicher Klassen durch Extraktion von Klassendaten und Reintegration durch verschiedene Ausführungsmethoden - Proxy: Patzhalter für eine komplexere Klasse, die ungünstig in der Instanziierung ist

D. Erzeugungsmuster

Factory: Auswahl und Rückgabe einer Klasseninstanz aus einer Menge von ähnlichen Klassen in Abhängigkeit von Daten, die der "Fabrik" mitgegeben werden - Abstract Factory: Rückgabe einer Klassengrupe aus einer Menge von Klassengruppen - Builder: Zusammensetzung eines Objekt aus anderen Objekten in Abhängigkeit von gegebenen Daten - Prototype: Kopiervorgang einer existierenden Klassen anstelle einer Neuerstellung, wenn die Neuerstellung ungünstig wäre - Singleton: Sicherstellung, dass nur eine einzige Objektinstanz existiert und dass diese global verfügbar ist

Dozent:

Herr Karsten Thüer studierte Angewandte Informatik an der Fachhochschule Gelsenkirchen mit dem Schwerpunkt Betriebliche Informationssysteme. Er arbeitet seit mehr fast 10 Jahren als Projektleiter und Berater/Trainer für Software-Entwicklung mit Java-Technologien.

Er hat als Projektleiter und Programmierer in Deutschland und in den USA gearbeitet. Er entwickelte dabei datenbankgestützte betriebliche Web-Anwendungen auf Basis von J2EE/JEE-Technologien. Speziell im Bereich SAP und Java konzipierte er komplexe E-Commerce-Applikationen, die mit seinem Team umsetzte. Er ist jedoch auch im Open Source-Bereich aktiv und hat an Projekten wie "ASK" und "Yehat" teilgenommen, die CRM und Kommunikation mit Kunden ermöglichen.

Projektreferenzen:

  • Projektleitung und Koordination eines ERP-Systems zur Distribution und Verwaltung von Online-Werbung
  • Programmierung und Co-Projektleitung eines Trouble-Ticket-Systems mit Inventarisierung für pädagogische Einrichtungen
  • Machbarkeitsstudie über die Entwicklung eines Open-Source CRM-Systems
  • Projektplanung und Controlling eines Open-Source CRM-Systems für mittelständische Unternehmen
  • Prozessanalysen und Aufwandsschätzung für ein SAP/R3 System im Rohstoffsektor
  • Co-Projektleitung, Architektur- und Designentwicklung sowie Programmierung eines sozialen Netzwerkes für den Einsatz im Intranet bei mittelständischen Unternehmen.
  • Koordination und Entwicklung einer FX-Trading Plattform
  • Leitung und fachliche Architektur eines Führungsprozess-Portals