Sie suchen Ihre bereits erworbenen Lerninhalte? Dann geht es hier entlang: Zum academy Campus
Funktionale Programmierung ist ein Paradigma, das Funktionen
als zentrale Bausteine verwendet. Im Gegensatz zur objektorientierten oder
prozeduralen Programmierung, bei der häufig Zustände und Datenstrukturen
verändert werden, betont die funktionale Programmierung Unveränderlichkeit und
die Vermeidung von Seiteneffekten. Das Webinar führt in die Grundlagen ein.
Funktionale Programmierung bietet zahlreiche Vorteile: Unveränderliche Datenstrukturen und Vermeidung ungewollter Seiteneffekte machen den Code vorhersehbarer und weniger fehleranfällig, was Testen, Debuggen und Wartung erleichtert. Auch Parallelisierung und nebenläufige Ausführung werden vereinfacht, da gemeinsame Zustände überflüssig werden und die Nutzung von Mehrkernprozessoren erleichtert wird.
Die Referentin führt im Webinar praxisnah in die Grundlagen ein und verdeutlicht, dass einfache Mechanismen hinter diesem als hochkomplex wahrgenommenen Programmierstil stehen.
Den Teilnehmern steht ein Chat zur Verfügung, über den sie Rückfragen stellen können. Nach dem Vortrag bleibt ausreichend Zeit, um auf offene Fragen einzugehen.
Kurzer geschichtlicher Exkurs (Lambda-Calculus)
Funktionen vs. Prozeduren (mapping values vs. Changing runtime)
Werte, überall Werte (functions are values)
Immutability (easier to reason about)
Daten sind kein Verhalten (OOP encapsulates Data and Behaviour, fp separates them)
Komposition mal einfach (durch Trennung von Daten und Verhalten lassen sich Pipelines bauen)
Ein bisschen Curry? (N-Ary functions, partial application and currying)
Kleiner ist besser (kleinste Bausteine zu größeren zusammensetzen)
Ganze Muster statt Bestandteilen prüfen (Pattern matching)
Alles schon mal da gewesen (Arrays, Promises, Streams are nearly Monads)
3 Gebote (lift, map, chain)
Konzepte statt Verhalten abstrahieren (Option Monad selbst schreiben)
Vorstellung bereits abstrahierter Konzepte (Option, Either, Future)
Kombination von Konzepten (Either to Option, TaskEither etc)
Pipelines mit Monads verbinden (user stories in pipelines ausdrücken)
Fehlerbehandlung in nicht nervig (railway based programming)
Ausblick
Sie erhalten einen leicht verdaulichen Einblick in die Mechanismen der funktionalen Programmierung.
Sie lernen, abstrakte Muster zu erkennen und zu verarbeiten.
Sie können unnötigen Ballast identifizieren und loswerden.
Web- und Enterprise-Entwickler
Mathematiker die einen Einstieg in die Programmierung suchen
Alle, die sich für das Konzept der funktionalen Programmierung interessieren
Katja Potensky is a software engineer at adesso and has been working in a professional setting since 2012. She does not allow herself to be limited to individual aspects of a system and has therefore already implemented a variety of projects in different roles and team sizes. She says about programming: “I like my code the way I like my motorcycle rides: fluent, precise and very fast“.
Füllen Sie ganz einfach und bequem das Kontaktformular aus und wir werden Ihnen Ihre Fragen schnellstmöglich beantworten.