Lua:
Organizacja kodu w funkcje
Jak to zrobić:
-- Zdefiniowanie prostej funkcji do powitania
function greet(name)
return "Cześć, " .. name .. "!"
end
-- Użycie funkcji
print(greet("Programista Lua")) -- Przykładowy wynik: Cześć, Programista Lua!
Funkcje mogą być bardziej złożone, obsługujące różne zadania:
-- Funkcja do obliczania powierzchni prostokąta
function calculateArea(width, height)
return width * height
end
-- Wywołanie funkcji i wyświetlenie wyniku
local area = calculateArea(5, 4)
print(area) -- Przykładowy wynik: 20
Pogłębiona wiedza
Lua, od swojego powstania w latach 90-tych, promuje modułowe projektowanie. Organizacja kodu za pomocą funkcji nie jest czymś unikatowym dla Lua—praktyka ta obowiązuje od zarania języków programowania takich jak Fortran czy Lisp. Alternatywy takie jak kodowanie w miejscu (inline code) czy kopiowanie i wklejanie tego samego kodu, nie są tylko źle widziane; są potencjalnymi gniazdami błędów.
W Lua funkcje są obiektami pierwszej klasy, co oznacza, że mogą być przechowywane w zmiennych, przekazywane jako argumenty i zwracane przez inne funkcje. Są wszechstronne. Jednowątkowa natura Lua oznacza, że musimy utrzymać funkcje lekkie i zwięzłe dla wydajności. Funkcje mogą być lokalne (o ograniczonym zasięgu) lub globalne, i rozumienie kiedy używać każdego z nich może zdecydować o efektywności skryptu.
Zobacz także
- Oficjalna dokumentacja Lua na temat funkcji: https://www.lua.org/pil/6.html
- Praktyczne przykłady użycia funkcji w Lua: https://lua-users.org/wiki/SampleCode
- Praktyki pisania czystego kodu w Lua: https://github.com/Olivine-Labs/lua-style-guide