Děkujeme za vaši dotaz! Jeden z našich pracovníků vás brzy kontaktuje.
Děkujeme za rezervaci! Jeden z našich pracovníků vás brzy kontaktuje.
Návrh Školení
Úvod do Lua
- Krátká historie
- Cíle, vlastnosti a ne-cíle Lua
- Zdroje dokumentace a tutoriálů Lua
- Nainstalování interpretra Lua
- Nastavení a použití LuaRocks
Základní syntaxe a sémantika
- Identifikátory
- Komentáře, blok komentářů
- Globální proměnné a vynucování striktnosti
- Lokální proměnné
- Samostatné programy, argumenty programu
- Kompilační jednotky, chunky, výrazy, středníky
Datové typy a datové struktury
- Základní typy: nil, boolean, number, string
- Typy objektů: function, userdata, thread, table
- Odkazy/objekty vs. základní hodnoty
- Důležitost tabulek v Lua
Úvod do tabulek a jejich všestrannost
- Tabulky jako asociační pole
- Tabulky jako číselná pole, sekvence
Základní řídicí struktury
- Konstrukce if then elseif else end
- Cykla while
- Cykla repeat
- Jednoduchý cyklo for
Zpracování chyb
- Návratové hodnoty vs. výjimky
- Převod návratové hodnoty na výjimku
- Převod výjimky na návratovou hodnotu
- Úrovně chyb
Příklad programů
- Evaluační polynom
- Prohledávání šířkovou prioritou
- Další cvičení
Více o funkcích
- Počítané argumenty
- Objektově orientované volání
- Uzavírající funkce (closures)
- Currying
- Rekurzivní volání v zádech (tail calls)
- Vícerázení a víceretourning
- Varargs
Iterátory a koroutiny
- Obecná cykla for
- Iterátory bez stavu vs. se stavem
- Rozdíl mezi iterátory a korutinami
Metatabulky a metametody
- Příklad množiny (set)
- Metametoda __tostring
- Aritmetické metametody
- Metametody __index, __newindex
- Metametoda __len
Moduly a balíčky
- Použití modulů
- Vytváření modulů
- Organizace modulů do balíčků
Programování založené na objektech
- Stavěcí kamenný objektově orientovaného programování v Lua
- Příklady
Diskuse o pokročilejších vlastnostech jazyka
- Slabé tabulky (weak tables)
- Finalizátory
- Kompilace, eval, načítání
Požadavky
Znalost alespoň jednoho dalšího programovacího jazyka. Programovací praxe. Volitelně, pokud máte zkušenosti s dalšími skriptovacími jazyky, usnadní vám to porozumění Lua.
14 Hodiny