Wann nutzt man funktionale Programmierung?

Konzepte von Programmierparadigmen

Eleanor Thomas

Senior Data Analytics Engineer

Einsatzgebiete der funktionalen Programmierung

  • Machine Learning, Deep Learning, Künstliche Intelligenz
  • Analysieren und Verarbeiten großer Datensätze
  • Data Engineering (z. B. in Scala und Clojure)

Datenverarbeitung

Konzepte von Programmierparadigmen

Beispiel: funktionale Programmierung

def process_data(raw_data):
    processed_data = raw_data

    ... further processing steps here! ...

    return processed_data
  • Funktion nimmt Eingabedaten in raw_data
  • Legt neue Ausgabedaten-Variable processed_data an
  • Führt feste Schritte zur Weiterverarbeitung aus
  • Gibt processed_data zurück
Konzepte von Programmierparadigmen

Vor- und Nachteile der funktionalen Programmierung

Vorteile

  • Reine Funktionen sind leichter zu lesen und zu debuggen
  • Reine Funktionen sind leichter zu testen
  • Weniger unerwartete Nebenwirkungen im Code
  • Hohe Wiederverwendbarkeit über Projekte hinweg
  • Funktionen können parallel laufen → schnellerer Code

Nachteile

  • Umdenken nötig; wirkt einschränkend: „Side Effects“ (Dateien schreiben etc.) sind oft genau das, was wir wollen
  • Weniger Expert:innen, Tools und Frameworks
  • Steilere Lernkurve und weniger Lernressourcen
  • Höherer Speicherbedarf begrenzt Einsatz
Konzepte von Programmierparadigmen

Funktionale vs. deklarative Programmierung

  • Funktionale Programmierung ist deklarativ
  • Deklarativ: dem Computer sagen, was er tun soll, nicht wie
  • Funktionale Programmierung ist nur eine Art von deklarativer Programmierung
  • Man sagt, welche Funktionen laufen, nicht die genauen Schritte

Funktionale Programmierung ist deklarativ

Konzepte von Programmierparadigmen

Lass uns üben!

Konzepte von Programmierparadigmen

Preparing Video For Download...