Köszönjük, hogy elküldte érdeklődését! Csapatunk egyik tagja hamarosan felveszi Önnel a kapcsolatot.
Köszönjük, hogy elküldte foglalását! Csapatunk egyik tagja hamarosan felveszi Önnel a kapcsolatot.
Kurzusleírás
Bevezetés a Lua-ba
- Egy kis történelem
- Lua góljai, szereplései és nem góljai
- A Lua dokumentáció és oktatóanyagok forrásai
- A Lua tolmács telepítése
- A LuaRocks beállítása és használata
Alapvető szintaxis és szemantika
- Azonosítók
- Megjegyzések, megjegyzések blokkolása
- Globális változók és a szigorúság érvényesítése
- Lokális változók
- Önálló programok, program argumentumok
- Összeállítási egységek, darabok, kifejezések, pontosvesszők
Adattípusok és adatstruktúrák
- Alaptípusok: nulla, logikai érték, szám, karakterlánc
- Objektumtípusok: függvény, felhasználói adatok, szál, táblázat
- Hivatkozások/objektumok vs. alapértékek
- A táblázatok jelentősége a Lua-ban
A táblázatok bemutatása és sokoldalúságuk
- A táblázatok asszociatív tömbként
- Táblázatok, mint numerikus tömbök, sorozatok
Alapvető vezérlési struktúrák
- A ha akkor elseif else vége
- A while ciklus
- Az ismétlési hurok
- Az egyszerű for ciklus
Hibakezelés
- Visszatérési értékek kontra kivételek
- Visszatérési érték átalakítása kivételté
- Kivétel átalakítása visszatérési értékké
- Hibaszintek
Példa programok
- Polinomiális értékelés
- Szélesség első keresés
- További gyakorlatok
Bővebben a funkciókról
- Megnevezett érvek
- Objektumorientált hívások
- Lezárások
- Currying
- Tail hívások
- Többszörös hozzárendelés és visszaküldés
- Varargs
Iterátorok és társrutinok
- Az általános for ciklus
- Állapotmentes vs állapottartó iterátorok
- Az iterátorok és a társrutinok közötti különbségek
Metatáblázatok és metamódszerek
- A beállított példa
- A __tostring metamódszer
- Aritmetikai metamódszerek
- Az __index, __newindex metamódszerek
- A __len metamódszer
Modulok és csomagok
- Modulok használata
- Modulok készítése
- Modulok csomagokba rendezése
Haladó táblázatok
- Táblázatok a sorokhoz és a halmokhoz
- Grafikonokat leíró táblázatok
- Mátrixok mint táblázatok
- Hivatkozott listák táblázatként
- String pufferek
Metatáblázatok példákon keresztül
- Proxyk
- Csak olvasható
- Memoizáció
- Dinamikus programozás memoizálással
- Fibonacci példa
Környezetek
- A globális változók és a környezetek közötti kapcsolat
- Szabad változók
- Az _ENV tábla és a _G tábla
Bővebben a modulokról
- Különböző megközelítések a modulok létrehozásához
- Modulok, amelyek megváltoztatják a viselkedést
- Modul inicializálása és argumentumok
- Környezetek használata biztonságos modulok megvalósításához
Fejlett iterátorok és társrutinok
- Termelő, fogyasztó, szűrő
- Tárrutinok burkolása iterátorok beszerzéséhez
- Állapot nélküli iterátor a hivatkozott listákhoz
Hozzájárulás az ökoszisztémához
- Csomagok feltöltése a MoonRocks-ba
Funkcionális paradigma a Lua-ban
- A térkép funkció
- A kicsinyítés/hajtás funkció
Objektumorientált Programming
- Az OOP különböző megközelítései
- Az öröklődés különböző megközelítései
- Példák
A Lua Standard Libraries bemutatása
Összeállítás
- Összeállítás
- Eval
- Kapcsolat a környezettel
- Bináris darabok
Szemétgyüjtés
- Gyenge asztalok
- Véglegesítők, a __gc meta-módszer
Lua bájtkód és virtuális gép
- Bájtkód előállítása forráskódból
- Bájtkód olvasása és elemzése
- Rövid bemutató a Lua virtuális gép forráskódjáról
C modulok
- C hívása innen: Lua
- Search a C modulok elérési útja és betöltése
Lua hívása C-ről
- A verem
- Hibakezelés
- Folytatások
Lua értékek és típusok kezelése C-ből
- Tömbök
- Húrok
- Felhasználói adat
- Metatáblázatok
- Objektumorientált hívások
- Könnyű felhasználói adatok
Memóriakezelés
- Allokátorok
- GC API
Szálak itt: Lua
- Társrutinok vs szálak
- Valódi többszálú és Lua állapot
Követelmények
Legalább egy másik programozási nyelv ismerete. Programming tapasztalat. Opcionálisan, ha ismeri a többi szkriptnyelvet, ez megkönnyíti a Lua megértését.
21 Órák