Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Lesedauer 3 Min.

Funktionale Programmierung ist nicht die Antwort

Die Funktionale Programmierung (FP) hat viele Vorteile und kann bestehende Programme übersichtlicher, weniger fehleranfällig und gleichzeitig kürzer machen. FP ist aber nur eines von vielen Werkzeugen.
Entwickler John A De Goes bezeichnet sich selbst als einen funktional orientierten Softwareentwickler. Seit vier Jahren nutzt er die Funktionale Programmierung (FP) und liebt sie, wie er in einem Artikel auf seiner Website bekennt. Vor kurzem hat er einen Kurzzeitvertrag für die Arbeit an einer bestehenden Java-Anwendung angenommen und konnte während dieser Arbeit einige der Gründe, warum er funktionale Programmierung mag, neu überdenken. Dazu gehören:
  • Funktionen höherer Ordnung (mit denen man Funktionen an Funktionen übergeben oder Funktionen von Funktionen zurückgeben kann) vermeiden eine Menge Doppelarbeit.
  • Unveränderliche Datenstrukturen, die oft in FP verwendet werden, ersparen es einem, sich ständig Gedanken darüber machen zu müssen, was der Code mit den Daten macht, die man ihm übergibt.
  • Starke Typen, die in vielen funktionalen Programmiersprachen vorkommen, sagen mehr über statisch bewährte Eigenschaften des Codes aus. In seiner Arbeit am Java-Code konnte er damit eine Menge defensiver Null-Prüfungen löschen.
  • Reine Funktionen, also Funktionen ohne Seiteneffekte – ihre Ausgabe ist eine deterministische Funktion ihrer Eingabe, sind viel einfacher zu verstehen und zu testen, weil man sich nicht fragen muss, ob sich das Verhalten der Funktion aufgrund eines verborgenen Zustands ändert.
Das sind nur die wichtigsten Vorteile – es gibt noch weitere und natürlich auch einige Nachteile. John A De Goes konnte bei seiner Arbeit an der Java-Anwendung Fehler beheben und eine große Menge neuer Funktionen mit insgesamt weniger Codezeilen implementieren.Heute haben die meisten Programmierer von funktionaler Programmierung gehört, viele verwenden einige Techniken aus FP (zumindest Funktionen höherer Ordnung). Auf dem Spektrum der funktionalen Programmierung (FP) bewegen sich die Menschen zwischen einem der beiden Extreme. Im einen Extrem ist FP eine Möglichkeit, die imperative Programmierung zu bereichern (zum Beispiel einen leichtgewichtigen Callback an eine Funktion oder einen Block an eine Schleife zu übergeben). Im anderen Extrem ist FP eine Möglichkeit, sogenannten reinen Code zu schreiben - Code ohne Seiteneffekte, ausgedrückt als reine, referenziell transparente Funktionen. Einige Leute haben sich so sehr in FP verliebt, dass ihre Ansichten fast religiös sind. In diesem Fall meint De Goes, dass viele blind für etwas geworden sind, das eigentlich offensichtlich sein sollte: Funktionale Programmierung (rein oder anders) ist nicht das Ziel der Softwareentwicklung. Vielmehr ist sie ein Mittel zum Zweck, wie jedes andere Werkzeug in der Tasche eines Softwareingenieurs.In seinem umfangreichen Artikel geht De Goes detaillierter darauf ein, wie man FP sinnvoll und ohne Dogmatismus für Software-Projekte einsetzt.

Neueste Beiträge

„Sieh die KI als Juniorentwickler“
CTO Christian Weyer fühlt sich jung wie schon lange nicht mehr. Woran das liegt und warum er keine Angst um seinen Job hat, erzählt er im dotnetpro-Interview.
15 Minuten
27. Jun 2025
DWX hakt nach: Wie gestaltet man intuitive User Experiences?
DWX hakt nach: Wie gestaltet man intuitive User Experiences? Intuitive Bedienbarkeit klingt gut – doch wie gelingt sie in der Praxis? UX-Expertin Vicky Pirker verrät auf der Developer Week, worauf es wirklich ankommt. Hier gibt sie vorab einen Einblick in ihre Session.
4 Minuten
27. Jun 2025
DWX hakt nach: Wie stellt man Daten besonders lesbar dar?
Dass das Design von Websites maßgeblich für die Lesbarkeit der Inhalte verantwortlich ist, ist klar. Das gleiche gilt aber auch für die Aufbereitung von Daten für Berichte. Worauf besonders zu achten ist, erklären Dr. Ina Humpert und Dr. Julia Norget.
3 Minuten
27. Jun 2025
Miscellaneous

Das könnte Dich auch interessieren

MVVM mal ganz einfach - MVVM-Framework im Selbstbau
Warum man manchmal einfach von vorn anfangen muss.
14 Minuten
12. Mär 2018
Wenn es sich leicht anfühlt, machst du etwas falsch! - Agilität und Lernen
Was wertebasierte Frameworks leisten können – und was nicht.
12 Minuten
20. Sep 2021
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige