"Eigentlich" ist es ganz einfach - wie immer: Es gibt typische Aufgaben und dazu passende, typische Lösungen. Dennoch zählt das Thema Design Pattern unter Softwareentwicklern zu den anspruchsvolleren Themen.
Das Wissen über verfügbare Pattern allein reicht nicht, es ist auch notwendig, ein Gefühl für Pattern zu entwickeln. Es gilt, den Blick für Design Pattern zu schärfen und zwar sowohl in der Modellierungsphase, als auch in der nachfolgenden Implementierungsphase. Die Menge der bearbeiteten Pattern steht bei diesem Kurs nicht im Vordergrund, dennoch bilden die behandelten Pattern einen sehr großen Anwendungsbereich ab.
Inhalt
Einführung in Design Pattern
Pattern in der "Realen Welt"
Beispiele für Erzeugungsmuster mit Übungen
"Singleton" - von manchen Objekten darf es nur eine Instanz geben
"Factory" - unterschiedliche Objekte mit gleicher Schnittstelle erzeugen
"Prototyp" - komplexe Objekte anhand einer Vorlage erzeugen
Beispiele für Strukturmuster mit Übungen
"Facade" - einfache Schnittstellen für komplexe Systeme schaffen
"Observer" - Kommunikationsstruktur für unabhängige Komponenten
"Composite" - die typische Implementierung für "Teile-Ganze-Beziehungen"
"Decorator" - eine flexible Form, um eine Klasse zu erweitern
"Proxy" - ein vorgelagertes Stellvertreterobjekt
"Adapter" - inkompatible Objekte über Schnittstellen koppeln
Beispiele für Verhaltensmuster mit Übungen
"Command" - die Ausführung von Befehlen wird separiert vom Aufrufer
"Iterator" - ein allgemeines Verfahren, Elemente einer Liste zu durchlaufen
"Visitor" - Auslagerung von Operationen in externe Klassen mit Interface-Kopplung
Seminar-Ziel
Vor allem haben Sie eine Antenne für Pattern entwickelt. Zusätzlich kennen Sie die wichtigsten Varianten und können die Qualität Ihrer Softwareprodukte steigern.
Wer sollte teilnehmen
Softwareentwickler mit soliden Kenntnissen in Java, die mehr über Design Pattern wissen möchten
Dauer des Seminars
3 Tag(e), 1. Tag 10:00-17:00h, Folgetag(e) 09:00-16:00h
Teilnehmerzahl
min. 1, max. 8 Personen *** Wenn Sie sich anmelden findet der Kurs statt! ***
Seminar-Gebühren
1.980,00 Euro p. P. zzgl. MwSt., inkl. Seminar-Unterlagen, Teilnahmezertifikat, Mittagessen und ganztägig Getränke, Obst und Snacks
Er studierte Biochemie und Informatik und kam schon als Praktikant zur GFU. Außer seiner Dozententätigkeit für die GFU realisiert er verschiedene Java-Projekte in der Banken- und Versicherungsbranche. Er ist ein Mann aus der Praxis und gibt seine langjährigen Erfahrungen aus Client/Server-Großprojekten in Seminaren und Workshops an seine Teilnehmer weiter. Seine große Kiste mit Büchern, die über und über mit Merkzetteln gespickt ist, hat er immer dabei.
Letztes Seminar mit 6 Teilnehmern: Traumergebnis mit
Im GFU-Bookshop finden Sie u. a. folgende Bücher zu diesem Seminar / Lehrgang:
C# 3.0 Design Patterns
If you want to speed up the development of your . NET applications, you´re ready for C# design patterns -- elegant, accepted and proven ways to tackle common programming problems. This practical guide offers you a clear introduction to the classic object-oriented design patterns, and explains how to use the latest features of C# 3. 0 to code them. C# Design Patterns draws on new C# 3. 0 language and . NET 3. 5 framework features to implement the 23 foundational patterns known to working developers. You get plenty of case studies that reveal how each pattern is used in practice, and an insightful comparison of patterns and where they would be best used or combined. This well-organized and illustrated book includes: * An explanation of design patterns and why they´re used, with tables and guidelines to help you choose one pattern over another * Illustrated coverage of each classic Creational, Structural, and Behavioral design pattern, including its representation in UML and the roles of its various players * C# 3. 0 features introduced by example and summarized in sidebars for easy reference * Examples of each pattern at work in a real . NET 3. 5 program available for download from O´Reilly and the author´s companion web site * Quizzes and exercises to test your understanding of the material. With C# 3. 0 Design Patterns, you learn to make code correct, extensible and efficient to save time up front and eliminate problems later. If your business relies on efficient application development and quality code, you need C# Design Patterns.
CSS & HTML Design Patterns
Auch wenn CSS inzwischen zum Standard-Handwerkszeug jedes Webdesigners gehört - es ist und bleibt schwer zu erlernen und zu beherrschen. CSS-Anweisungen verhalten sich je nach Kontext unterschiedlich, und kaum ein Browser interpretiert CSS-Anweisungen standardkonform. Was also der CSS-Standard an Systematik mitbringt, wird durch die Praxis fast komplett ausgehebelt. Dazu kommt, dass Fehler nicht durch Rückmeldungen der Entwicklungsumgebung, sondern nur durch ausdauerndes Ausprobieren des CSS-Codes in verschiedenen Browserumgebungen gefunden und durch Einsatz von Hacks und Filtern ausgeglichen werden können. Wer mit CSS arbeitet, braucht so vor allem zwei Dinge: ein exzellentes Gedächtnis und viel Geduld. Dieses Buch verfolgt einen revolutionären Ansatz: es wendet das Prinzip der Entwurfsmuster auf CSS an und entwirft so die erste Systematik zum Einsatz von Cascading Style Sheets. Der Autor kann mit rund 350 Rezepten jeden Designzweck bedienen - und alle Rezepte funktionieren mit jedem erhältlichen Browser!
Seminar
Moderne C++ Programmierung
"C++ ist eine objektorientierte Programmiersprache, neben der Objektorientierung gewinnt aber die generische Programmierung mittels parametrisierbaren Klassen oder Templates zunehmend an Bedeutung, da diese Methode große Vorteile gegenüber der objektorientierten aufweist, wenn es darum geht, wiederverwendbaren Code zu schreiben. Dieses Buch liefert eine fundierte Darstellung des modernen Programmdesigns in C++ gemäß dem ANSI/ISO-Standard. Der Autor gibt dabei zunächst ein kompaktes Repetitorium der grundlegenden Sprachelemente von C++ und erläutert dann detailliert die klassische objektorientierte Modellierung sowie die modernen Techniken der generischen Programmierung mittels Templates und Design Patterns. TOC:Der Präprozessor. - Standarddatentypen. - Zeiger. - Arrays. - Referenzen. - Typenkonvertierung. - Operatoren. - Funktionsüberladung. - Inlining. - Klassen. - Attribute. - Methoden. - Konstruktoren. - Destruktoren. - Grundregeln zur Klassendeklaration. - Verschachtelte Typen. - Der Scope-Operator. - "friend"-Deklarationen. - Statische Methoden und Attribute. - Vererbung. - Virtuelle Funktionen und Polymorphismus. - Mehrfachvererbung. - Virtuelle Vererbung. - Operatorüberladung. - Zugriffsoperatoren. - Die Operatoren new und delete. - Exception Handling. - Die Rolle von Patterns und Idiomen. - Modularisierung eines C++ Projektes. - Namensräume. - Generische Programmierung in C++. - Funktionstemplates. - Klassentemplates. - Templatespezialisierung. - Methodentemplates. - Templatestrategien. - Aspektorientierte Programmierung. - Die C++ Standardbibliothek. - Die Streams. - Die STL. - Container, Iteratoren und Algorithmen. - List. - Vector. - Map. - Containeradapter. - Allokatoren. - Die Stringklasse std::string. - Autopointer. "
Seminar
Design Patterns for eScience
"This book is for readers with backgrounds in science engineering who have experience in computer programming but who lack a training in software engineering. The treatment is centered around a case study in software development in "e-Science´´ using the Java? programming language. A graphical front-end for browsing and visualising scientific waveform data is progressively refactored using important design patterns for object-oriented software. The final product is ready for porting onto the Grid. Object-oriented design patterns are taught in a real-world context which is relevant to computational science. A comprehensive CD of the case study accompanies the book. "
Seminar
GFU Cyrus AG Taubenholzweg 1
51105 Köln-Deutz Tel: (0221) 82809-0 Fax: (0221) 82809-50
EMail:
Vorstand: Hagen Cyrus, Karsten Kiesel Vorsitzender des Aufsichtsrats: Peter Hecker Gerichtsstand Köln,
HRB 60463, UST-Ident-Nr. DE 122 654 743