Clean Software Architecture und Design Patterns Kurs

TU Kaiserslautern Freenet Schleuniger Siemens Gore GEMA SWM AUSY IT

Maßgeschneiderte Clean Software Architecture und Design Patterns Kurs: Praxis-Schulung für Programmierer

Wollen Sie das Design Ihrer Programme verbessern und Fehlerquellen nachhaltig minimieren? Wir bringen Ihnen auf einfache und strukturierte Weise bei, wie Sie moderne objektorientierte Techniken einsetzen können. Lernen Sie die Grundlagen von objektorientiertem Design und objektorientierter Programmierung kennen. Features, wie Klassen, Vererbung und Interfaces sind dann keine Fremdwörter mehr. Nutzen Sie die wichtigsten Design- und Architekturpatterns für sich.

Wir finden sicher die optimale Kombination für die Bedürfnisse Ihres Teams. Bringen Sie alle Fragen mit. Wir nehmen uns gerne die Zeit, Sie individuell zu beraten.

Alle Kurse live

In der Academy oder online

Ihre Team-Vorteile auf einen Blick

  • Maßgeschneiderte Themen

  • Flexible Termine und Formate

  • Erfahrene Trainer mit Lehrdidaktik

  • Zertifikat bei einer aktiven Teilnahme

  • Didaktisch durchdachtes Lernmaterial

  • Praxisorientiert, kompakt und lebhaft

Clean Software Architecture und Design Patterns Themen und Module

Arbeitet Ihr Team regelmäßig mit objektorientierter Programmierung und strebt nach Clean Design in der Softwareentwicklung? Falls ja, haben wir genau das Richtige für Sie! Maßgeschneiderte Schulungen auch für Entwickler, die sich auf objektorientierte Programmierung und Clean Design spezialisieren. Holen Sie das Beste aus Ihren Software-Projekten heraus. Dank einzelner Module kann Ihr Entwicklungsteam individuelle Schulungen erhalten, die auf die Prinzipien des Clean Designs und der objektorientierten Programmierung ausgerichtet sind.

Welche Themen gehören zum Bereich Moderne Objektorientierung und Clean Architecture? Kurse zu diesem Themenbereich setzen sich typischerweise aus einer Auswahl der folgenden Module zusammen. Die folgende Auflistung beinhaltet die gängigsten Moderne Objektorientierung und Clean Architecture Themengebiete in allen Sprachen, allerdings kann die Schulung auf das Niveau Ihres Teams angepasst werden. Darauf aufbauend wird unser Trainer die individuelle Zielsetzung des Kurses einhalten.

Wir predigen keine Theorie, wir lösen Probleme! Holen Sie das Maximum an Wissen für Ihr Team heraus. Stellen Sie die Themen gemäß Ihrer Vorkenntnisse und Bedürfnisse, je nach Projekt, zusammen. Denn individuelles Lernen bringt den gewünschten Erfolg!

Objektorientierung

Dieser Bereich deckt sowohl Grundlagen der Objektorientierung ab, die unabhängig von der verwendeten Programmiersprache sind, als auch Mechanismen, die die Programmiersprache Ihrer Wahl zur Realisierung objektorientierter Designs anbietet. Im Abschnitt über Programmiersprachen-spezifische Module finden Sie Links zu weiteren Themen, die für die verschiedenen Programmiersprachen relevant sind.

  • Grundkonzepte der Objektorientierung
  • Benutzerdefinierte Datentypen
  • Vererbung, abstrakte Klassen und Interfaces
  • Protokolle (für Python)
  • Templates (für C++)
  • Mehrfachvererbung (für Python, C++)

Einführung in Patterns und UML

Graphische Repräsentationen sind zum Erkennen von großen Zusammenhängen manchmal leichter verständlich als Code. In diesem kurzen Modul lernen Sie, wie Sie einige der Diagrammtypen der UML verwenden können, um am Whiteboard die Struktur und Interaktionen Ihrer Software zu skizzieren. Außerdem gehen wir kurz darauf ein, was Entwurfsmuster sind und warum sie ein hervorragendes Mittel sind um schnell und fundiert Einblicke in gutes Softwaredesign zu bekommen.

  • Was sind Patterns und warum sind sie für uns interessant?
  • Klassendiagramme
  • Interaktionsdiagramme
  • Sequenzdiagramme
  • Kollaborationsdiagramme
  • Aktivitätsdiagramme

Design Patterns

Das “Gang of Four Design Patterns” Buch war der Auslöser für die Welle an Publikationen und Konferenzen, die sich mit Patterns beschäftigen. Die vier Autoren des Buches werden oft scherzhaft als “Gang of Four” bezeichnet, daher verwendet man manchmal die Bezeichnung “Gang of Four Patterns” (kurz “GoF Patterns”), wenn man sie von der Vielzahl anderer Patterns abgrenzen will.

Viele dieser Patterns haben sich in zahllosen Softwareprojekten bewährt und jeder Programmierer, Designer und Architekt, der sich mit objektorientierter Software beschäftigt sollte von diesen Patterns gehört haben.

  • Erzeugungsmuster (Creational Patterns)
  • Factory Method
  • Abstract Factory
  • Singleton
  • Builder
  • Prototype
  • Strukturmuster (Structural Patterns)
  • Adapter
  • Bridge
  • Decorator
  • Facade
  • Flyweight
  • Composite
  • Proxy
  • Behavioral Patterns
  • Interpreter
  • Template Method
  • Observer
  • Visitor
  • Iterator
  • Command
  • Memento
  • Strategy
  • Mediator
  • State
  • Chain of Responsibility

SOLID Patterns

Die SOLID Patterns sind eine Sammlung aus fünf Entwurfsmustern, die von Robert Martin im Rahmen seiner Clean Code und Clean Architecture Bücher bekannt gemacht wurden.

In diesem Modul lernen Sie die SOLID-Patterns kennen und erfahren, welche Vorteile (und Probleme) die Verwendung dieser Patterns mit sich bringt und wie Sie sie sinnvoll einsetzen können.

  • Single Responsibility Principle
  • Open Closed Principle
  • Liskov Substitution Principle
  • Interface Segregation Principle
  • Dependence Inversion Principle

GRASP Patterns

Die “General Responsibility Assignment Software Patterns” (GRASP) sind eine Sammlung von neun Entwurfsmustern zum objektorientierten Design und zur Strukturierung von Verantwortlichkeiten (Responsibilities), die von Craig Larman publiziert wurden und eine etwas andere Perspektive auf Architekturfragen eröffnen als die SOLID Prinzipien.

  • Information Expert
  • Creator
  • Controller
  • Indirection
  • Low coupling
  • High cohesion
  • Polymorphism
  • Protected variations
  • Pure fabrication

Architektur-Patterns

Praxisrelevante Software-Architektur und Architektur-Patterns

Entwurfsmuster lassen sich nicht nur auf der Design-Ebene anwenden, auch im Bereich der Softwarearchitektur kann man Patterns identifizieren, z.B. verschiedene Architekturstile, wie ein System im Großen strukturiert sein kann. Wir gehen in diesem Modul auf einige häufig anzutreffende Architekturstile ein und zeigen, welche Konsequenzen sich aus der Wahl des Architekturstils ergeben.

  • Emergent architecture
  • Architectural styles
  • Layered architecture
  • Pipes and filter architecture
  • Hexagonal architecture

Kombination von Patterns

In diesem Modul besprechen wir, wie in vielen Systemen Patterns kombiniert werden um verschiedene Designprobleme zu lösen. Hier sehen Sie Beispiele dafür, wie man Patterns sinnvoll kombinieren kann, aber auch wie ein übertriebener Einsatz von Patterns Software zu kompliziert und schwer wartbar machen kann.

  • Interaction of patterns
  • Antipattern: "Patternitis"
  • Examples: Game programming
  • Examples: Personnel management system

Beispiel: Massgeschneiderte Clean Software Architecture

Dies Beispiel zeigt, wie einige Kurse für typische Kundenanforderungen aufgebaut sein können.

Beispiel: Software Architecture verbessern oder neu entwerfen

Wie könnte ein Kurs zu Modernem OOP und Clean Architecture aussehen?

Wenn Ihr Team die vorhandene Softwarearchitektur verbessern möchte oder die Techniken für den Entwurf und das Design von effektiver Softwarearchitektur mit objektorientierter Programmierung (OOP) erlernen und anwenden möchte, dann ist dieser Kurs genau richtig für Sie. Ein Kurs zu Clean Software Architecture würde typischerweise eine Auswahl folgender Themen behandeln:

  • Objektorientiertes Design (OOD)
  • Objektorientierte Programmierung (OOP) in der Sprache Ihrer Wahl
  • Wie setze ich OOD und OOP richtig ein? Wie vermeide ich Fallstricke?
  • Design- und Architektur-Patterns
  • Systeme von Patterns (GoF, SOLID, GRASP)

Ihre Trainer

Dr. Matthias Hölzl
Dr. Matthias Hölzl

Expert: Python, JavaScript, C++ , Machine Learning,

Dr. Stefan Behnel
Dr. Stefan Behnel

Expert: Python, Pytest, Clean Code, Fast Python, Cython

Dr. Max Meier
Dr. Max Meier

Expert: .NET/C#, Software Architektur, Microservice

Fragen und Antworten zur Objektorientierung und Clean Software Architecture Schulung

Welche Kursformate gibt es?

3-tägiger Kurs vor Ort bei der Coding Academy

Der Kurs findet in unsern modernen und top ausgestatteten Schulungsräumen statt. Wir stellen jedem Teilnehmer während der Schulung einen modernen Laptop zur Verfügung. Getränke werden von der Coding Academy zur Verfügung gestellt. Zugang zum Material bekommen Sie spätestens am ersten Tag des Kurses.

3-tägiger Inhaus-Schulung vor Ort bei Ihnen

Gerne kommen auch unsere Trainer zu Ihnen, wenn dies von Ihrer Seite ausdrücklich erwünscht ist und Sie für die Schulung einen guten Schulungsraum und die notwendige Infrastruktur haben.

3-tägiger Onlinekurs

Der Kurs findet Online statt. Sie benötigen lediglich einen Computer mit Internet-Zugang; für manche Kurse ist es allerdings nötig, dass Sie die verwendete Software installieren; das ist in der Beschreibung des jeweiligen Kurses angegeben. Zugang zum Material bekommen Sie spätestens am ersten Tag des Kurses.

4-Wochen Programm

Ein neues und innovatives Lernkonzept. Mehr Infos dazu hier

Wie läuft der formale Prozess ab (Bestellung, Schulung, Rechnung)?

  • Wenn Sie sich für eine Schulung interessieren, kontaktieren Sie uns am besten, damit wir die fachlichen Themen abklären können.
  • Falls Sie die Schulung bei uns absolvieren möchten, lassen wir Ihnen gerne ein unverbindliches Angebot zukommen.
  • Falls das Angebot Ihnen zusagt, nehmen Sie dieses an (eine kurze Zusage per E-Mail reicht aus).

  • Sollten Sie eine Auftragsbestätigung benötigen, schicken wir sie Ihnen gerne zu.
  • Danach finden wir gemeinsam einen Termin, der für Ihr Team gut passt.
  • Bei Online Schulung stellen wir Ihnen den Link zur Verfügung: MS-Teams, BBBServer oder Zoom.
  • Ein paar Tage nach der Schulung erhalten Sie eine Rechnung mit einem Zahlungsziel von zwei Wochen.

  • Bei aktiver Teilnahme an der Schulung erhalten die Teilnehmer/innen ihre Zertifikate nachträglich per E-Mail.

Erhalten Absolventen der Objektorientierung und Clean Design-Kurse ein Zertifikat?

Selbstverständlich erhalten Sie als Teilnehmer an einem Objektorientierung und Clean Design-Kurs ein Zertifikat. Voraussetzung dafür ist die komplette Teilnahme an allen Kurseinheiten und Programmier-Aufgaben und die erfolgreiche Programmierung eines kleinen Abschlussprojektes. Das allerdings wird Ihnen nach einem intensiven Kurs mit Sicherheit mehr Freude als Stress bereiten.

Was zeichnet Kurse bei der Coding Academy aus?

  • Individuell: wir gehen gezielt auf Sie ein und berücksichtigen Ihre Vorkenntnisse, Wunschthemen und Schwerpunkte
  • Von Experten nach der RAED-Lehrmethode® entwickelt
  • Kompakt, lebhaft und unterhaltsam
  • Strukturiert und leicht verständlich
  • Viel Praxis: Sie können die im Kurs erlernten Kenntnisse sofort anwenden
  • Theorie auf das Wesentliche optimiert
  • Viele Beispiele und Aufgaben, deren Schwierigkeitsgrad linear ansteigt
  • Kleine Gruppen: max. 8 Teilnehmer im 3-Tages-Kurs; max. 15 Teilnehmer im Online-Coaching
  • Hochqualifizierte Trainer mit bis zu 30 Jahren Erfahrung in Industrie und Lehre an deutschen Hochschulen und Universitäten
  • Bei vor Ort Schulungen stellen wir den Teilnehmern moderne Laptops ohne Zusatzkosten zur Verfügung

Was sind typische Ziele von Kursen mit Schwerpunkt auf Clean Software Architecture?

  • Objektorientierung sinnvoll nutzen
  • Design Patterns anwenden lernen
  • Clean Code und Responsibility Driven Design verstehen
  • Techniken erwerben, mit denen Sie die Struktur von Programmen im Griff behalten können

Kundenstimmen

Wir danken unseren Kunden für ihr Vertrauen. 

Wir haben als Team an einer dreitägigen Schulung zum Thema "Python Clean Code Architecture" genommen . Ich kann die Kurse an dieser Akademie absolut weiterempfehlen....

Ganzes Testimonial zeigen

Benjamin Breuell,
Kinexon GmbH

Wenn mich unsere Mitarbeiter/innen bezüglich Schulungen im Coding- und Clean Code- Bereich ansprechen, gibt es mittlerweile nur noch einen Ansprechpartner und das seid natürlich Ihr: die Münchner Coding Akademie! Bei Euren Kursen habt Ihr mit einer s...

Ganzes Testimonial zeigen

Herr Tim Stuckmann,
VW

Hier bleibt keine Frage offen!

Wir nehmen uns sehr gerne Zeit für Sie. Nutzen Sie unser Kontaktformular für eine schriftliche Kontaktaufnahme. Unser Team antwortet rasch und spätestens innerhalb von 24h. Bei fachlichen Fragen und zur Klärung der Schwerpunkte, die für Ihr Team zielführend sind, vereinbaren Sie einen Termin für ein unverbindliches Beratungsgespräch!