Plan Szkolenia

Wprowadzenie do Lua

  • Krótka historia
  • Cele, cechy i nie-cele Lua
  • Źródła dokumentacji i tutoriali Lua
  • Instalacja interpretera Lua
  • Konfiguracja i użycie LuaRocks

Podstawowa składnia i semantyka

  • Identyfikatory
  • Komentarze, bloki komentarzy
  • Zmienne globalne i wymuszanie ścisłości
  • Zmienne lokalne
  • Samodzielne programy, argumenty programu
  • Jednostki kompilacji, fragmenty, wyrażenia, średniki

Typy danych i struktury danych

  • Podstawowe typy: nil, boolean, number, string
  • Typy obiektowe: function, userdata, thread, table
  • Referencje/obiekty vs. wartości podstawowe
  • Znaczenie tabel w Lua

Wprowadzenie do tabel i ich wszechstronności

  • Tabele jako tablice asocjacyjne
  • Tabele jako tablice numeryczne, sekwencje

Podstawowe struktury sterowania

  • Konstrukcja if then elseif else end
  • Pętla while
  • Pętla repeat
  • Prosta pętla for

Obsługa błędów

  • Wartości zwracane vs wyjątki
  • Konwersja wartości zwracanej na wyjątek
  • Konwersja wyjątku na wartość zwracaną
  • Poziomy błędów

Przykładowe programy

  • Obliczanie wielomianu
  • Przeszukiwanie wszerz
  • Dodatkowe ćwiczenia

Więcej o funkcjach

  • Argumenty nazwane
  • Wywołania obiektowe
  • Domknięcia
  • Currying
  • Wywołania ogonowe
  • Wielokrotne przypisanie i zwracanie
  • Zmienna liczba argumentów

Iteratory i współprogramy

  • Ogólna pętla for
  • Iteratory bezstanowe vs stanowe
  • Różnice między iteratorami a współprogramami

Metatabele i metametody

  • Przykład zbioru
  • Metametoda __tostring
  • Metametody arytmetyczne
  • Metametody __index, __newindex
  • Metametoda __len

Moduły i pakiety

  • Używanie modułów
  • Tworzenie modułów
  • Organizowanie modułów w pakiety

Programowanie obiektowe

  • Elementy składowe programowania obiektowego w Lua
  • Przykłady

Dyskusja na temat bardziej zaawansowanych funkcji języka

  • Słabe tabele
  • Finalizatory
  • Kompilacja, eval, ładowanie

Wymagania

Znajomość co najmniej jednego innego języka programowania. Doświadczenie w programowaniu. Opcjonalnie, jeśli masz doświadczenie z innymi językami skryptowymi, ułatwi to zrozumienie Lua.

 14 godzin

Liczba uczestników


Cena za uczestnika (netto)

Propozycje terminów

Powiązane Kategorie