Contacta con nosotros

Temario del curso

Introducción a Lua

  • Un poco de historia
  • Objetivos, características y no-características de Lua
  • Recursos de la documentación y tutoriales de Lua
  • Instalación del intérprete de Lua
  • Configuración y uso de LuaRocks

Sintaxis y semántica básica

  • Identificadores
  • Comentarios, comentarios en bloque
  • Variables globales y aplicación de la estrictitud
  • Variables locales
  • Programas independientes, argumentos del programa
  • Unidades de compilación, chunks, expresiones, punto y coma

Tipos de datos y estructuras de datos

  • Tipos básicos: nil, booleano, número, cadena
  • Tipos de objetos: función, userdata, hilo, tabla
  • Referencias/objetos vs. valores básicos
  • La importancia de las tablas en Lua

Introducción a las tablas y su versatilidad

  • Tablas como un array asociativo
  • Tablas como arrays numéricos, secuencias

Estructuras de control básicas

  • El if then elseif else end
  • El bucle while
  • El bucle repeat
  • El bucle for simple

Gestión de errores

  • Valores de retorno vs. excepciones
  • Convertir un valor de retorno a una excepción
  • Convertir una excepción a un valor de retorno
  • Niveles de error

Programas de ejemplo

  • Evaluación de polinomios
  • Búsqueda en anchura (BFS)
  • Ejercicios adicionales

Más sobre funciones

  • Argumentos nombrados
  • Llamadas orientadas a objetos
  • Clausuras
  • Currying
  • Llamadas cola
  • Asignación múltiple y retorno
  • Varargs

Iteradores y coroutine (co-rutinas)

  • El bucle for genérico
  • Iteradores sin estado vs. con estado
  • Diferencias entre iteradores y co-rutinas

Metatables y metamétodos

  • Ejemplo del conjunto (set)
  • El metametodo __tostring
  • Metamétodos aritméticos
  • Los metamétodos __index, __newindex
  • El metametodo __len

Módulos y paquetes

  • Uso de módulos
  • Creación de módulos
  • Organización de módulos en paquetes

Programación orientada a objetos

  • Los bloques de construcción de la POO en Lua
  • Ejemplos

Discusión sobre características más avanzadas del lenguaje

  • Tablas débiles
  • Finalizadores
  • Compilación, evaluación, carga

Requerimientos

Familiaridad con al menos otro lenguaje de programación. Experiencia en programación. Opcionalmente, si tiene familiaridad con otros lenguajes de script, eso hará que sea más fácil entender Lua.

 14 Horas

Número de participantes


Precio por participante

Próximos cursos

Categorías Relacionadas