Beschreibung
Wie funktioniert Softwarearchitektur mit Funktionen, unveränderlichen Daten, Kombinatoren?
Die Schulung präsentiert den Teilnehmer:innen 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 diesem Seminar 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:innen, 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.
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 eG
Finde Dein perfektes Seminar bei oose Suchst du nach erstklassigen Seminaren, Trainings, Zertifizierungen oder Workshops? Dann bist du bei oose richtig. Auch als Berater:innen sind wir eine oft gewählte Instanz. Im deutschsprachigen Raum und bei Bedarf auch international bieten wir...
Erfahren Sie mehr über oose eG und weitere Kurse des Anbieters.