Comprehensive Lua

Corso

Online

Prezzo da consultare

Chiama il centro

Hai bisogno di un coach per la formazione?

Ti aiuterà a confrontare vari corsi e trovare l'offerta formativa più conveniente.

Descrizione

  • Tipologia

    Corso

  • Metodologia

    Online

  • Inizio

    Scegli data

Lua è un linguaggio di scripting di facile utilizzo che viene utilizzato come un plug-in / linguaggio di estensione incorporato in prodotti diversi Ad esempio, è il linguaggio di scripting incorporato delle applicazioni di rete come nmap e wireshark, e può anche essere trovato come linguaggio di scripting in World of Warcraft, Orbiter e altri giochi Lua può anche essere usato come linguaggio autonomo È un linguaggio di programmazione leggero e multiparadigm e quindi il corso insegna vari concetti che gli studenti troveranno utili anche in altre aree dell'ingegneria del software Questo corso copre tutto ciò che c'è da sapere su Lua Costruiamo dai costrutti di programmazione di base, apprendiamo tecniche avanzate e infine parliamo dell'inclusione di Lua in altri linguaggi di programmazione e incorporiamo altri linguaggi di programmazione in Lua Il corso contiene molti esercizi di programmazione, in modo che i neofiti possano acquisire familiarità con la lingua, partendo da zero .
Machine Translated

Sedi e date

Luogo

Inizio del corso

Online

Inizio del corso

Scegli dataIscrizioni aperte

Profilo del corso

Familiarity with at least one other programming language. Programming experience. Optionally if you have familiarity with other scripting languages, that will make it easier to understand Lua.

Domande e risposte

Aggiungi la tua domanda

I nostri consulenti e altri utenti potranno risponderti

Chi vuoi che ti risponda?

Inserisci i tuoi dati per ricevere una risposta

Pubblicheremo solo il tuo nome e la domanda

Emagister S.L. (Titolare del trattamento dati) utilizzerà i tuoi dati per svolgere attività promozionali (via email e/o telefono), pubblicare recensioni o gestire eventuali segnalazioni. Nella politica sulla privacy potrai conoscere i tuoi diritti e gestire la cancellazione.

Opinioni

Materie

  • C
  • C#
  • Programmazione
  • C++

Programma

Introduction to Lua

  • A bit of history
  • Lua's goals, features and non-goals
  • Resources of Lua documentation and tutorials
  • Installing the Lua interpreter
  • Setting up and using LuaRocks
Basic syntax and semantics
  • Identifiers
  • Comments, block comments
  • Global variables and enforcing of strictness
  • Local variables
  • Standalone programs, program arguments
  • Compilation units, chunks, expressions, semicolons
Data types and data structures
  • Basic types: nil, boolean, number, string
  • Object types: function, userdata, thread, table
  • References/objects vs. basic values
  • The importance of tables in Lua
Introduction to tables and their versatility
  • Tables as an associative array
  • Tables as numeric arrays, sequences
Basic control structures
  • The if then elseif else end
  • The while loop
  • The repeat loop
  • The simple for loop
Error handling
  • Return values vs exceptions
  • Converting a return value to an exception
  • Converting an exception to a return value
  • Error levels
Example programs
  • Polynomial evaluation
  • Breadth first search
  • Additional exercises
More about functions
  • Named arguments
  • Object-oriented calls
  • Closures
  • Currying
  • Tail calls
  • Multiple assignment and return
  • Varargs
Iterators and co-routines
  • The generic for loop
  • Stateless vs stateful iterators
  • Differences between iterators and co-routines
Metatables and metamethods
  • The set example
  • The __tostring metamethod
  • Arithmetic metamethods
  • The __index, __newindex metamethods
  • The __len metamethod
Modules and packages
  • Using modules
  • Creating modules
  • Organizing modules into packages
Advanced tables
  • Tables for queues and stacks
  • Tables describing graphs
  • Matrices as tables
  • Linked lists as tables
  • String buffers
Metatables through examples
  • Proxies
  • Readonly
  • Memoization
  • Dynamic programming with memoization
  • The Fibonacci example
Environments
  • Relationship between global variables and environments
  • Free variables
  • The _ENV table and the _G table
More about modules
  • Different approaches to creating modules
  • Modules that change the behavior
  • Module initialization and arguments
  • Using environments to implement safe modules
Advanced iterators and co-routines
  • Producer, consumer, filter
  • Wrapping co-routines to get iterators
  • Stateless iterator for linked lists
Contributing to the Ecosystem
  • Uploading packages to MoonRocks
Functional paradigm in Lua
  • The map function
  • The reduce / fold function
Object-oriented Programming
  • Different approaches to OOP
  • Different approaches to inheritance
  • Examples
A walkthrough of the Lua Standard Libraries Compilation
  • Compilation
  • Eval
  • Relationship with the environment
  • Binary chunks
Garbage collection
  • Weak tables
  • Finalizers, the __gc meta-method
Lua bytecode and virtual machine
  • Generating bytecode from source code
  • Reading and analyzing bytecode
  • Quick tour of the source code of the Lua VM
C modules
  • Calling C from Lua
  • Search path and loading of C modules
Calling Lua from C
  • The Stack
  • Error handling
  • Continuations
Handling Lua values and types from C
  • Arrays
  • Strings
  • Userdata
  • Metatables
  • Object oriented calls
  • Light userdata
Memory management
  • Allocators
  • GC API
Threads in Lua
  • Co-routines vs threads
  • Real multi-threading and Lua states

Chiama il centro

Hai bisogno di un coach per la formazione?

Ti aiuterà a confrontare vari corsi e trovare l'offerta formativa più conveniente.

Comprehensive Lua

Prezzo da consultare