Dlaczego warto używać Luau?
Część sekcji Wprowadzenie do Luau ścieżki Lua w Coddy. Lekcja 2 z 73.
System typów Luau oferuje trzy główne korzyści, dzięki którym tworzenie oprogramowania jest bezpieczniejsze i wydajniejsze.
Wykrywaj błędy wcześnie: kontroler typów analizuje kod podczas edycji, zanim zostanie uruchomiony. Rozważ klasyczny błąd w Lua: przekazanie nil tam, gdzie oczekiwana jest liczba:
-- Lua: nic cię przed tym nie ostrzega
local function calculateTotal(price, tax)
return price + tax
end
print(calculateTotal(nil, 0.1))
-- ✗ błąd w czasie wykonania: próba wykonania działania arytmetycznego na nilW zwykłym Lua awaria następuje dopiero wtedy, gdy błędne wywołanie zostanie w końcu wykonane — być może na oczach użytkowników. Co gorsza, Lua czasem całkowicie ukrywa błąd: "50" + 0.1 po cichu konwertuje ciąg znaków i zwraca 50.1… aż do dnia, w którym ciąg nie będzie liczbą. Dzięki adnotacjom Luau błąd jest zgłaszany natychmiast:
local function calculateTotal(price: number, tax: number): number
return price + tax
end
calculateTotal(nil, 0.1) -- ✗ błąd typu podczas edycji: nil nie jest liczbąLepsza czytelność kodu: adnotacje pełnią funkcję dokumentacji. price: number dokładnie informuje ciebie i twoich współpracowników, czego funkcja oczekuje i co zwraca — bez zgadywania i przeszukiwania implementacji.
Ulepszone narzędzia programistyczne: ponieważ edytor zna typ każdej zmiennej, otrzymujesz dokładne autouzupełnianie, bezpieczniejsze refaktoryzacje i sprawniejszą nawigację. Wpisz kropkę po wartości o określonym typie, a edytor wyświetli dokładnie to, co jest dostępne.
Spróbuj swoich sił
Ta lekcja nie zawiera wyzwania z kodem.
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Wprowadzenie do Luau
1Pierwsze kroki z Luau
Czym jest Luau?Dlaczego warto używać Luau?Twój pierwszy kod w LuauSprawdzanie typów i tryby błędówPodsumowanie: Wprowadzenie do Luau4Praca z funkcjami
Typowanie parametrów i wartości zwracanychTypowanie funkcji anonimowychFunkcje niczego nie zwracająceParametry opcjonalneDomyślne wartości parametrówFunkcje wariadyczneDefiniowanie typów funkcjiPodsumowanie: funkcje z typami2Typy podstawowe
Typy podstawowe: num, str, boolTyp „any”: furtka awaryjnaTyp „unknown”Typy Nil i opcjonalneInferencja typów w praktyceJawne adnotacje typówPowtórka: ćwiczenie typów podstawowych5Aliasy, typy sumy i przekroju
Aliasy typów dla typów prostychTypy sumyPraca z typami sumyTypy literałoweTypy przekrojuŁączenie aliasów typówPodsumowanie: zaawansowane kombinacje typów3Typowane tabele: tablice i mapy
Tablice typowaneDodawanie i odczytywanie elementówCzym jest typ mapy?Deklarowanie map i dostęp do nichIterowanie po tabelachTabele o mieszanej strukturzeWielowymiarowe tablice typowanetable.unpack i varargsPodsumowanie: tablice i mapyPoćwicz samodzielnie: Kompilator Luau online