Programa do Curso

Introdução a Lua

  • Um pouco de história
  • Objetivos, recursos e não objetivos de Lua
  • Recursos de Lua documentação e tutoriais
  • Instalando o interpretador Lua
  • Configurando e usando LuaRocks

Sintaxe e semântica básicas

  • Identificadores
  • Comentários, bloquear comentários
  • Variáveis globais e aplicação de rigor
  • Variáveis locais
  • Programas independentes, argumentos de programa
  • Unidades de compilação, pedaços, expressões, ponto e vírgula

Tipos de dados e estruturas de dados

  • Tipos básicos: nulo, booleano, número, string
  • Tipos de objetos: função, userdata, thread, tabela
  • Referências/objetos vs. valores básicos
  • A importância das tabelas em Lua

Introdução às tabelas e sua versatilidade

  • Tabelas como uma matriz associativa
  • Tabelas como matrizes numéricas, sequências

Estruturas básicas de controle

  • O if then elseif else termina
  • O loop while
  • O ciclo de repetição
  • O loop for simples

Manipulação de erros

  • Valores de retorno versus exceções
  • Convertendo um valor de retorno em uma exceção
  • Convertendo uma exceção em um valor de retorno
  • Níveis de erro

Programas de exemplo

  • Avaliação polinomial
  • Amplitude da primeira pesquisa
  • Exercícios adicionais

Mais sobre funções

  • Argumentos nomeados
  • Chamadas orientadas a objetos
  • Fechamentos
  • Escovando
  • Chamadas finais
  • Atribuição múltipla e retorno
  • Varargs

Iteradores e co-rotinas

  • O loop for genérico
  • Iteradores sem estado vs. com estado
  • Diferenças entre iteradores e co-rotinas

Metatabelas e metamétodos

  • O exemplo definido
  • O metamétodo __tostring
  • Metamétodos aritméticos
  • Os metamétodos __index, __newindex
  • O metamétodo __len

Módulos e pacotes

  • Usando módulos
  • Criando módulos
  • Organizando módulos em pacotes

Programação orientada a objetos

  • Os blocos de construção do OOP em Lua
  • Exemplos

Discussão sobre recursos de linguagem mais avançados

  • Mesas fracas
  • Finalizadores
  • Compilação, avaliação, carregamento

Requisitos

Familiaridade com, pelo menos, uma outra linguagem de programação. Programming experiência. Opcionalmente, se você tiver familiaridade com outras linguagens de script, isso facilitará a compreensão de Lua.

 14 Horas

Número de participantes


Preço por Participante

Próximas Formações Provisórias

Categorias Relacionadas