Mulțumim pentru trimiterea solicitării! Un membru al echipei noastre vă va contacta în curând.
Mulțumim pentru trimiterea rezervării! Un membru al echipei noastre vă va contacta în curând.
Schița de curs
Introducere în Lua
- Un pic de istorie
- Obiectivele, caracteristicile și non-obiectivele Lua
- Resurse de documentație și tutoriale Lua
- Instalarea interpretorului Lua
- Configurarea și utilizarea LuaRocks
Sintaxă și semantică de bază
- Identificatori
- Comentarii, comentarii în bloc
- Variabile globale și aplicarea strictității
- Variabile locale
- Programe independente, argumente ale programului
- Unități de compilare, bucăți, expresii, punct și virgulă
Tipuri de date și structuri de date
- Tipuri de bază: nil, boolean, număr, șir de caractere
- Tipuri de obiecte: funcție, userdata, thread, tabel
- Referințe/obiecte vs. valori de bază
- Importanța tabelelor în Lua
Introducere în tabele și versatilitatea lor
- Tabele ca array asociativ
- Tabele ca array numerice, secvențe
Structuri de control de bază
- Structura if then elseif else end
- Bucla while
- Bucla repeat
- Bucla for simplă
Gestionarea erorilor
- Valori de return vs excepții
- Conversia unei valori de return într-o excepție
- Conversia unei excepții într-o valoare de return
- Niveluri de eroare
Programe exemplu
- Evaluarea polinoamelor
- Căutarea în lățime
- Exerciții suplimentare
Mai multe despre funcții
- Argumente numite
- Apeluri orientate pe obiecte
- Closures
- Currying
- Apeluri finale
- Atribuire și return multiplă
- Varargs
Iteratori și co-rutine
- Bucla for generică
- Iteratori fără stare vs cu stare
- Diferențe între iteratori și co-rutine
Metatabele și metametode
- Exemplul set
- Metametoda __tostring
- Metametode aritmetice
- Metametodele __index, __newindex
- Metametoda __len
Module și pachete
- Utilizarea modulelor
- Crearea modulelor
- Organizarea modulelor în pachete
Programare orientată pe obiecte
- Blocurile de construcție ale OOP în Lua
- Exemple
Discuție despre caracteristici avansate ale limbajului
- Tabele slabe
- Finalizatori
- Compilare, eval, încărcare
Cerințe
Cunoștințe de bază despre cel puțin un alt limbaj de programare. Experiență în programare. Opțional, dacă aveți cunoștințe despre alte limbaje de scripting, acest lucru va facilita înțelegerea Lua.
14 Ore