Curso online gratuitoIntrodução à Programação e Lógica com Lua do Zero ao OOP e Game Dev
Duração do curso online: 6 horas e 1 minutos
Novo
Curso gratuito de Lua do zero: lógica, estruturas, módulos, OOP e fundamentos de game dev com prática e projetos.
Neste curso gratuito, aprenda sobre
Boas-vindas e Primeiros Passos com Lua
Funções e Escopo de Variáveis
Condicionais e Operadores Lógicos
Laços de Repetição e Estruturas de Dados
Biblioteca Padrão, Documentação e Módulos
Orientação a Objetos (OOP) com Lua
Arquitetura de Jogos: Eventos e Loop Principal
Ambiente de Desenvolvimento: VS Code, Lua e LOVE2D
Descrição do curso
Aprenda programação do zero com Lua em um curso online gratuito voltado para quem quer entender lógica de programação de forma prática e evoluir até conceitos modernos usados no desenvolvimento de jogos e aplicações. A proposta é construir uma base sólida, começando pelos primeiros comandos e pela forma correta de pensar na solução de problemas, para depois avançar com segurança para estruturas mais completas.
Ao longo do curso, você desenvolve familiaridade com a sintaxe da linguagem, escrita de código legível e noções essenciais como tipos de dados, operadores, entrada e saída, funções e organização do raciocínio em algoritmos. Também trabalha com escopo, retorno de valores e boas práticas para evitar erros comuns, preparando o terreno para criar programas mais consistentes.
Com a base consolidada, o aprendizado avança para condições e operadores lógicos, repetição com laços e o uso de estruturas de dados como arrays, tabelas e dicionários, além de explorar documentação, bibliotecas padrão, pacotes e módulos. Na etapa final, o foco é aplicar Programação Orientada a Objetos em Lua, entender como modelar comportamentos com tabelas, usar self e a sintaxe adequada, e transformar isso em projetos com mentalidade de game dev. Você ainda entra em conceitos importantes como eventos, game loop, técnicas de bounce e debounce e configuração do ambiente no VS Code com LOVE 2D, tornando o caminho mais direto para experimentar e criar seus próprios jogos.
Conteúdo do curso
Aula em vídeo: Introdução a Programação - 00 - Sobre o Curso - É Válido e Atualizado?02m
Exercício: Qual opção permite programar em Lua sem instalar nada no computador?
Aula em vídeo: ???????? Introdução a Programação - 01 - Olá Mundo, Comentários, Números e Operadores Básicos23m
Exercício: Em Lua, qual opção representa corretamente um comentário de múltiplas linhas?
Aula em vídeo: ???????? Introdução a Programação - 02 - Variáveis, Strings e Concatenação de Texto15m
Exercício: Em Lua, qual operador deve ser usado para juntar (concatenar) textos e também texto com número?
Aula em vídeo: ???????? Introdução a Programação - 02 Extra - Exemplo sobre Variáveis01m
Exercício: Qual é a principal utilidade de uma variável em programação (como em Lua)?
Aula em vídeo: ???????? Introdução a Programação - 03 - Valor Booleano, Igualdade e Conversão para Texto12m
Exercício: Em Lua, qual operador deve ser usado para comparar se dois valores são iguais?
Aula em vídeo: ???????? Introdução a Programação - 04 - Números Negativos e Decimais, Valores Nulos e Escape de Texto13m
Exercício: Em Lua, como você pode colocar aspas dentro de uma string sem causar erro de string não finalizada?
Aula em vídeo: ???????? Introdução a Programação - 05 - Fazendo Perguntas e Entrada e Saída de Dados11m
Exercício: Em Lua, qual alternativa descreve corretamente o que acontece ao usar io.read() para obter um nome digitado pelo usuário?
Aula em vídeo: ???????? Introdução a Programação - 06 - Algoritmos e Funções21m
Exercício: Em Lua, qual alternativa descreve corretamente como definir uma função e onde fica seu corpo (implementação)?
Aula em vídeo: ???????? Introdução a Programação - 07 - Variáveis Locais e Globais14m
Exercício: Em Lua, o que acontece quando uma função recebe um parâmetro com o mesmo nome de uma variável global existente?
Aula em vídeo: ???????? Introdução a Programação - 08 - Retorno de Valores em Funções09m
Exercício: Em Lua, qual é o principal objetivo de uma função quando queremos usá-la em cálculos (como em física de um jogo)?
Aula em vídeo: ???????? Introdução a Programação - 08 Extra - Exemplo de Retorno em Funções01m
Exercício: Qual é a principal utilidade do retorno de uma função em programação?
Aula em vídeo: ???????? Introdução a Programação - 09 - Condições lógicas e o operador SE - ENTÃO (if then else)10m
Exercício: Em Lua, qual estrutura permite testar uma condição e executar um bloco alternativo quando a condição for falsa?
Aula em vídeo: ???????? Introdução a Programação - 10 - Operador lógico E (and)14m
Exercício: Em Lua, ao usar o operador lógico and em uma condição, quando a expressão inteira será verdadeira?
Aula em vídeo: ???????? Introdução a Programação - 11 - Prática e exemplos com o Operador E (and)08m
Exercício: Ao combinar duas verificações (tecla pressionada e quantidade de munição) para permitir um tiro, qual operador lógico garante que o tiro só acontece quando as duas condições forem verdadeiras?
Aula em vídeo: ???????? Introdução a Programação - 12 - Operador lógico OU (OR) e operador NOT11m
Exercício: Em Lua, qual afirmação descreve corretamente o operador lógico or em uma condição?
Aula em vídeo: ???????? Introdução a Programação - 13 - Minigame para praticar operadores lógicos06m
Exercício: Em Lua, qual é o resultado da expressão lógica: not (true and false)?
Aula em vídeo: ???????? Introdução a Programação - 14 - Várias condições lógicas no mesmo teste04m
Exercício: Em uma condição lógica em Lua, o que é possível fazer para combinar várias verificações mantendo o resultado final como verdadeiro ou falso?
Aula em vídeo: ???????? Introdução a Programação - 15 - Laço de Repetição (Loop) WHILE (enquanto)11m
Exercício: Qual é a finalidade do loop while em Lua?
Aula em vídeo: ???????? Introdução a Programação - 16 - Laço de Repetição (Loop) FOR e REPEAT UNTIL06m
Exercício: Qual é a principal diferença do laço repeat...until em relação ao while/for?
Aula em vídeo: ???????? Introdução a Programação - 17 - Arrays, Matrizes de Dados e Dicionários20m
Exercício: Em Lua, qual é a forma correta de acessar a vida do inimigo na posição 4 em uma tabela chamada inimigos?
Aula em vídeo: ???????? Introdução a Programação - 18 - Documentação e Biblioteca Padrão Lua07m
Exercício: Ao manipular texto em Lua, qual função da biblioteca padrão é usada para substituir ocorrências de um padrão em uma string (com parâmetro opcional para limitar a quantidade de substituições)?
Aula em vídeo: ???????? Introdução a Programação - 19 - Pacotes e Módulos Lua - Como Criar e Importar11m
Exercício: Em Lua, ao criar sua própria biblioteca (pacote) com funções, qual estrutura é normalmente usada para armazenar e exportar essas funções?
Aula em vídeo: ???????? Introdução a Programação - 20 - Programação Orientada a Objetos (POO / OOP) - Conceitos11m
Exercício: Na Programação Orientada a Objetos, qual alternativa descreve corretamente a diferença entre classe e objeto?
Aula em vídeo: ???????? Introdução a Programação - 21 - Tabelas Lua são Objetos - OOP Orientação a Objetos08m
Exercício: Em Lua, qual estrutura é comumente usada para representar objetos, armazenando atributos (estado) e podendo conter funções?
Aula em vídeo: Introdução a Programação - 22 - Criando um Jogo em Lua com Tabelas e Pacotes - Orientada a Objetos32m
Exercício: Em um mini-jogo com entidades como Player, Item e Inimigo, qual prática melhor segue o encapsulamento na orientação a objetos?
Aula em vídeo: ???????? Introdução a Programação - 23 - self e operador dois pontos em Lua - Orientação a Objetos08m
Exercício: Em Lua, ao criar uma “classe” com tabela para instanciar objetos (ex.: Conta/Banco), qual forma correta de definir um método que acessa/modifica o estado da própria instância?
Aula em vídeo: ???????? Introdução a Programação - 24 - Dominando Programação Orientada a Objetos com Lua - Projeto Final06m
Exercício: Ao transformar um jogo em orientado a objetos em Lua, qual mudança é mais característica?
Aula em vídeo: ???????? Introdução a Programação - 25 - Eventos, Programação Orientada a Eventos e Pac-Man24m
Exercício: Em programação baseada em eventos, o que determina o fluxo de execução do programa?
Aula em vídeo: ???????? Introdução a Programação - 26 - Game Loop10m
Aula em vídeo: ???????? Introdução a Programação - 27 - Bounce e Debounce05m
Exercício: Qual é o objetivo do conceito de debounce ao detectar uma colisão/toque em um jogo?
Aula em vídeo: ???????? Introdução a Programação - 28 - O que é o NaN: Not a Number?05m
Aula em vídeo: Como configurar o VS Code para Lua e LOVE 2D (bônus: suporte a debugger)07m
Exercício: Qual ação é necessária para o VS Code conseguir executar projetos Love2D sem você informar o caminho do executável toda vez?