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

Numărul de participanți


Pret per participant

Cursuri viitoare

Categorii înrudite