Begriff
Funktion
Warum wichtig?
Dieser Begriff ist ein Knoten im SengakujiWorks-Wissensnetz. Nutze Level 0 für die erste Einordnung, Level 1 für Praxis, Level 2 für technische Struktur und Level 3 für Grenzen, Fallstricke und Expertenkontext.
Eine Funktion ist ein benannter Codeblock, der eine Aufgabe erledigt. Sie kann Eingaben bekommen, etwas berechnen und ein Ergebnis zurückgeben. Dadurch muss man dieselbe Logik nicht immer wieder neu schreiben.
Merksatz: Eine Funktion verpackt eine wiederverwendbare Aufgabe.
Statt dieselbe Berechnung dreimal zu kopieren, schreibt man eine Funktion wie berechnePreis(). Dann kann der Code diese Funktion an mehreren Stellen aufrufen. Gute Funktionen haben klare Namen, wenige Aufgaben und vorhersehbares Verhalten.
Funktionen können Parameter, Rueckgabewerte, Seiteneffekte und Fehler haben. In funktionaler Programmierung versucht man, Seiteneffekte zu reduzieren und Funktionen wie mathematische Abbildungen zu behandeln. In Serverless-Systemen kann eine Funktion sogar die kleinste Deployment-Einheit sein.
Zu große Funktionen werden schwer testbar und verstecken Verantwortlichkeiten. Zu kleine oder schlecht benannte Funktionen zerreissen den Lesefluss. Kritisch sind Funktionen, die heimlich globale Zustaende ändern oder bei gleicher Eingabe unterschiedliche Ergebnisse liefern.
Quick-Check
Warum nutzt man Funktionen?
Sie machen Code wiederverwendbar, testbar und besser strukturierbar.Was ist ein Seiteneffekt?
Eine Funktion ändert etwas ausserhalb ihres Rueckgabewerts, etwa eine Datei, Datenbank oder globale Variable.Was ist eine typische Falle?
Eine Funktion erledigt zu viele Aufgaben und wird dadurch schwer verständlich und schwer testbar.