Beschreibung
Wie funktioniert Softwarearchitektur mit Funktionen, unveränderlichen Daten, Kombinatoren?
Die Schulung präsentiert den Teilnehmern funktionale Softwarearchitektur als Alternative zu objektorientierter Architektur. Im Vergleich zu OO-Architektur setzt die funktionale Softwarearchitektur auf unveränderliche Daten, algebraische Abstraktionen und eingebettete domänenspezifische Sprachen. Das Resultat sind flexible und robuste Architekturen, die gegenüber OO weniger komplex sind und weniger versteckte Abhängigkeiten mit sich bringen.
In funktionalen Sprachen ist Architektur – aufgrund der erhöhten Ausdruckskraft und Abstraktionsmöglichkeit – Code. In der Schulung werden Hands-On-Übungen durchgeführt, in denen (in Haskell) programmiert wird.
Am 1. Tag des Seminars wird es eine kompakte Einführung in die funktionale Programmierung für Schulungsteilnehmer, die damit noch keine Erfahrung haben bzw. eine kurze Auffrischung geben. Es werden überwiegend Hands-On-Übungen durchgeführt, in denen praktisch programmiert wird. Benutzt werden die spezielle Lehrsprachen und die erprobte didaktische Methodik der DeinProgramm-Konstruktionsanleitungen.
Als Vorbereitung für den iSAQB Certified Professional for Software Architecture, Advanced Level (CPSA-A)
Das Seminar deckt die Bereiche „Methodische Kompetenz“ sowie „Technische Kompetenz“ des CPSA-Advanced Curriculums ab und ist entsprechend beim iSAQB lizensiert. Wenn Sie die Zertifizierung anstreben, können Sie sich mit der Teilnahme 10 Credit Points im Bereich „Methodische Kompetenz“ und 20 Credit Points im Bereich „Technische Kompetenz“ anrechnen lassen. Informationen zur CPSA-Zertifizierung finden Sie hier.
Der Dozent Dr. Michael Sperber ist Mitautor des FUNAR-Curriculums.
Kommende Starttermine
Zielgruppe / Voraussetzungen
Erfahrung mit funktionaler Programmierung hilfreich, aber nicht notwendig.
seminarinhalt
Tag 1: Einführung in die funktionale Programmierung
- Datenmodellierung
- Konstruktionsanleitungen
- Selbstreferenzen und Rekursion
- Programmieren mit Folgen
- Higher-Order-Programmierung
- eingebaute Datenstrukturen
- Programmieren mit Zustand
- Programmieren mit Akkumulatoren
- eigenschaftsbasiertes Testen
Tag 2-4: Struktur funktionaler Software-Systeme
- Funktionen und Werte
- Komposition
- Typen
- Module
Technologien für funktionale Programmierung
- statische Typen
- dynamische Typen
- Endrekursion
- strikte bzw. nicht-strikte Auswertung
- Laufzeitumgebung
Umsetzung von funktionalen Anforderungen
- DDD vs. FP
- Kombinatormodelle
- eingebettete domänenspezifische Sprachen
Umsetzung von nicht-funktionalen Anforderungen
- CQRS
- Event Sourcing
- Parallelisierung
- Verteilung
Architekturmuster
- funktionale Datenstruktur
- Monoid
- Funktor
- Monade
- Model-View-Update
Infos anfordern

oose Innovative Informatik
Wenn es um Seminare, Trainings, Zertifizierungen und Workshops geht, steht oose Innovative Informatik weit Vorne. Auch als Berater:innen sind sie eine oft gewählte Instanz. Ob im deutschsprachigen Raum oder international, ob bei Kund:innen vor Ort, auf dem eigenen oose.campus in...
Erfahren Sie mehr über oose Innovative Informatik eG und weitere Kurse des Anbieters.