Schița de curs

Introducere la Lua

  • Un pic de istorie
  • Obiectivele, caracteristicile și non-goalurile lui Lua.
  • Resurse ale Lua documentație și tutoriale
  • Instalarea interpretului Lua.
  • Configurarea și utilizarea LuaRocks

Sintaxă și semantică de bază

  • Identificatori
  • Comentarii, blocați comentariile
  • Variabile globale și aplicarea strictității
  • Variabile locale
  • Programe independente, argumente de program
  • Unități de compilare, bucăți, expresii, punct și virgulă

Tipuri de date și structuri de date

  • Tipuri de bază: zero, boolean, număr, șir
  • Tipuri de obiecte: funcție, date utilizator, fir, tabel
  • Referințe/obiecte vs. valori de bază
  • Importanța tabelelor în Lua

Introducere în mese și versatilitatea acestora

  • Tabelele ca un tablou asociativ
  • Tabelele ca matrice numerice, secvențe

Structuri de control de bază

  • Sfârșitul dacă, atunci elseif altfel
  • Bucla while
  • Bucla repetată
  • Simplul for bucla

Eroare de manipulare

  • Valori returnate vs excepții
  • Conversia unei valori returnate într-o excepție
  • Conversia unei excepții într-o valoare returnată
  • Niveluri de eroare

Exemple de programe

  • Evaluare polinomială
  • Lățimea prima căutare
  • Exerciții suplimentare

Mai multe despre funcții

  • Argumente numite
  • Apeluri orientate pe obiecte
  • Închideri
  • curry
  • Apeluri de coadă
  • Atribuire multiplă și returnare
  • Varargs

Iteratoare și co-rutine

  • Bucla generică pentru
  • Iteratoare fără stat vs
  • Diferențele dintre iteratoare și co-rutine

Metatable și metametode

  • Exemplul stabilit
  • Metametoda __tostring
  • Metametode aritmetice
  • Metametodele __index, __newindex
  • Metametoda __len

Module și pachete

  • Utilizarea modulelor
  • Crearea modulelor
  • Organizarea modulelor în pachete

Programare orientată pe obiecte

  • Elementele de bază ale OOP în Lua
  • Exemple

Discuție despre funcții de limbă mai avansate

  • Mesele slabe
  • Finalizatoare
  • Compilare, evaluare, încărcare

Cerințe

Familiaritate cu cel puțin un alt limbaj de programare. Programming experiență. Opțional, dacă aveți familiaritate cu alte limbaje de scripting, acest lucru va facilita înțelegerea Lua.

  14 ore
 

Numărul de participanți


Dată început

Dată sfârșit


Dates are subject to availability and take place between 09:30 and 16:30.
Open Training Courses require 5+ participants.

Cursuri înrudite

Combined C/C++, JAVA and Web Application Security

  28 ore

Advanced Java Security

  21 ore

Combined JAVA, PHP and Web Application Security

  28 ore

Standard Java Security

  14 ore

Java and Web Application Security

  21 ore

Advanced Java, JEE and Web Application Security

  28 ore

Categorii înrudite