Note: The course is also available in English. Search for: "Design Patterns and their usage with Dependency Injection"
Kurs zum Erlernern häufig angewendeter Entwurfsmuster
In meinem Kurs lernst du die Grundlagen verschiedener, wichtiger Design Patterns (Entwurfsmuster) der Software-Entwicklung kennen. Absichtlich gehen wir nicht auf alle möglichen Entwurfsmuster ein. Wir beschränken uns auf die am häufigsten verwendeten Muster, die Software-Entwickler beherrschen sollten. Andere Muster darüber hinaus sprengen den Umfang und die Komplexität dieses Kurses. Ebenfalls intensiv beschäftigt sich der Kurs mit der praktischen Anwendung der Muster in Zusammenhang mit Dependency Injection und den SOLID-Prinzipien, damit Clean Code nicht nur eine leere Worthülse bleibt.
Behandelte Entwurfsmuster:
Decorator (Dekorierer)
Composite (Kompositum)
Proxy (Stellvertreter)
Strategy Pattern (Strategie)
Strategy Proxy
Adapter
Null Object (Nullobjekt)
Behandelte Konzepte:
SOLID-Prinzipien
Dependency Injection (Constructor Injection)
Composition Root (Bootstrapping)
Objektgraph
Verkettung und Wiederverwendung von Entwurfsmustern
Zielgruppe
Der Kurs richtet sich an Anfänger mit Programmierkenntnissen und fortgeschrittene Programmierer / Entwickler, die über die reine Implementierung von Funktionen und Algorithmen hinaus den Aufbau objektorientierter Software erlernen sowie sich im Bereich Design / Architektur weiterbilden möchten. Schnittstellen, Abstraktionen und Interfaces werden im Kurs kurz eingeführt, ein Vorwissen darüber erleichtert aber das Verständnis. Der Kurs setzt grundlegendes Wissen über Klassen und Funktionen voraus.
Entwickler, die bereits gesamte Applikationen entwicklen und aufbauen, aber häufig auf Probleme bei der Wartbarkeit und Anpassungsfähigkeit ihres Codes stoßen, können ebenfalls von den Inhalten profitieren. Insbesondere kann hier das vermittelte Wissen über Dependency Injection und den Composition Root neue Erkenntnisse bringen.
Die Beispiele und Übungen sind in C# verfasst, einer sehr einfach zu verstehenden Programmiersprache. Die behandelten Konzepte sind sprachübergreifend und der Code lässt sich problemlos in die eigene (objektorientierte) Programmiersprache übersetzen.
Inhalt des Kurses
Kurze theoretische Einleitungen mit einfachen UML-Diagrammen führen - über Analogien aus der realen Welt - zu praktischen Implementierungen in Code.
Alle Entwurfsmuster werden am Beispiel "Stecker und Steckdose" erläutert. So werden Funktion, Anwendung und Ziele der Muster auf abstrakter Ebene leicht verständlich erklärt. Der Schwerpunkt liegt dabei immer auf dem Verständnis der Muster sowie der tatsächlichen Implementierung. Die kurzen Theorie-Lektionen werden durch einfachste UML-Diagramme begleitet.
Der Kurs basiert auf einem Wechsel von
Video-Inhalten, die Entwurfsmuster an realen Objekten erläutern,
Präsentationen, die das Erlernte kompakt zusammenfassen,
Screencasts, in denen die Implementierungen und Umsetzungen in echtem Code gezeigt werden,
Übungen, die eigenständig gelöst werden können,
Quizze, zur schnellen Selbstkontrolle des Erlernten sowie
einem Abschlusstest mit über 35 Fragen zum gesamten Kurs.
Alles Wissen über Entwurfsmuster bringt nichts, wenn man sie in einer Applikation nicht korrekt einsetzen kann. Daher enthält der Kurs ebenfalls Grundlagen zu den SOLID-Prinzipien, sowie Dependency Injection und Composition Root, der Basis objektorientierten Designs. Mit diesen simplen Konzepten können Entwurfsmuster so in Anwendungen integriert werden, dass sie ihre wahre Stärke entfalten: adaptiven, wartbaren und verständlichen Code.
Auf diesem Wissen aufbauend gehen wir eine praxisnahe Beispiel-Applikation durch: die Bestellabfertigung eines E-Commerce-Unternehmens. Du lernst reale Einsatzmöglichkeiten der Entwurfsmuster, sowie deren Einbindung in die Applikation kennen.
Übungen
Unterstützt wird der gesamte Kurs durch Übungen, die in C# geschrieben wurden. Du erhälst Aufgaben zur Implementierung und zum Einbau von Entwurfsmustern. Übungen können auf zwei Wegen durchgeführt werden. Sie stehen einmal direkt im Kurs, über die von Udemy bereitgestellte IDE inkl. Kontrolltests und Lösungen zur Verfügung. Alternativ befinden sich die Übungen in der beigelegten Projektmappe für das kostenfreie Visual Studio 2022 Community Edition (oder höher).
Der gesamte Code, sowohl der Beispiele als auch der Übungen ist mit Unit-Tests versehen. Auch wenn in diesem Kurs nicht explizit auf Unit-Tests eingegangen wird, können dir diese Tests dennoch beim Nachvollziehen helfen und nebenbei einen Zugang zum Test-First-Development oder Test-Driven-Development (TDD) verschaffen. Du wirst sehen, wie einfach Implementierungen der Entwurfsmuster getestet werden können.
153
78
TAKE THIS COURSE