Lua:
Code in Funktionen organisieren

Wie geht das:

-- Definiere eine einfache Funktion zur Begrüßung
function greet(name)
    return "Hallo, " .. name .. "!"
end

-- Verwende die Funktion
print(greet("Lua-Programmierer")) -- Beispiel-Ausgabe: Hallo, Lua-Programmierer!

Funktionen können komplexer werden und verschiedene Aufgaben behandeln:

-- Eine Funktion, um die Fläche eines Rechtecks zu berechnen
function calculateArea(width, height)
    return width * height
end

-- Rufe die Funktion auf und drucke das Ergebnis
local area = calculateArea(5, 4)
print(area)  -- Beispiel-Ausgabe: 20

Vertiefung

Lua fördert seit seiner Entstehung in den 90er Jahren ein modulares Design. Code mit Funktionen zu organisieren, ist nicht einzigartig für Lua – es wird praktiziert, seit es Programmiersprachen wie Fortran und Lisp gibt. Alternativen wie Inline-Code und das Kopieren und Einfügen desselben Codes sind nicht nur verpönt; sie sind potenzielle Fehlerquellen.

In Lua sind Funktionen Bürger erster Klasse, das heißt, sie können in Variablen gespeichert, als Argumente übergeben und von anderen Funktionen zurückgegeben werden. Sie sind vielseitig einsetzbar. Aufgrund der Single-Thread-Natur von Lua muss man darauf achten, dass Funktionen schlank und effizient bleiben für die Performance. Funktionen können lokal (mit Scope) oder global sein, und das Verständnis, wann man welche verwendet, kann die Effizienz Ihres Skripts machen oder brechen.

Siehe auch