Zkuste nás kontaktovat

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

Počet účastníků


Cena za účastníka

Nadcházející kurzy

Související kategorie