$ masmorra_ascii

Item 09 de 10

9. Glossário pré-livro

Termos de programação geral

  • Algoritmo - sequência clara de passos para resolver um problema. “Receita” no sentido amplo, sem amarrar a linguagem específica.
  • Variável - caixa rotulada que guarda um valor. O valor pode mudar durante a execução do programa.
  • Função - bloco nomeado de código que aceita parâmetros, executa instruções, e devolve um resultado.
  • Parâmetro - valor que a função recebe ao ser chamada. Tipo “ingrediente” do que ela vai processar.
  • Retorno (return) - valor que a função devolve para quem a chamou.
  • Tipo (de dado) - categoria do valor: número (int), texto (String), verdadeiro/falso (bool), lista (List), etc. Diz ao compilador o que cabe na variável.
  • Compilar - traduzir código fonte para instruções que a máquina executa diretamente.
  • Interpretar - ler e executar código fonte linha por linha, sem traduzir antes.
  • Erro de sintaxe - código mal escrito, com gramática inválida. O compilador recusa antes mesmo de tentar rodar.
  • Erro de runtime - código gramaticalmente válido, mas que falha durante a execução. Null pointer, divisão por zero, índice fora de lista.
  • Debug (depurar) - processo de encontrar e corrigir erros no código.
  • Stack trace - rastro de chamadas de função que o programa percorreu até bater no erro. Lê de cima para baixo (mais recente para mais antigo).

Termos específicos de Dart

  • void - tipo de retorno usado quando a função não devolve nada.
  • main() - função obrigatória que é o ponto de entrada do programa.
  • var - declara variável e deixa o Dart inferir o tipo a partir do valor inicial.
  • final - declara variável que recebe valor uma vez só, nunca mais muda.
  • const - constante em tempo de compilação. Valor fixo, conhecido antes do programa rodar.
  • String - sequência de caracteres entre aspas. 'oi', "olá".
  • int - número inteiro. 42, -3, 0.
  • double - número com casas decimais. 3.14, 0.5.
  • bool - verdadeiro ou falso. true, false.
  • Interpolação de string - encaixar valor de variável dentro de uma string usando $. Ex: 'Olá $nome' se torna 'Olá Aragorn' se nome == 'Aragorn'.
  • null - valor especial que significa “nada”. Variáveis declaradas com tipo nullable (String?) podem ser null; sem o ? não podem.
  • print() - função built-in que imprime no terminal.
  • import - traz funcionalidade de outra biblioteca para o arquivo atual. Ex: import 'dart:io'; para acessar stdin.
  • package: - prefixo usado em imports que apontam para bibliotecas instaladas via dart pub.
  • pubspec.yaml - manifesto do projeto: nome, versão, dependências, versão mínima do SDK.
  • dart analyze - comando que checa o código por erros sem rodar.
  • dart format - comando que formata automaticamente o código (indentação, espaços, quebras de linha).
  • dart run - comando que roda um arquivo Dart.

Termos de jogo / roguelike

  • Roguelike - gênero de jogo com ASCII no terminal, geração procedural e permadeath. Nasceu com Rogue (1980).
  • Permadeath (morte permanente) - quando o herói morre, o save é apagado. Próxima partida começa do zero.
  • HP (Health Points) - pontos de vida. Quando chega a zero, o personagem morre.
  • XP (Experience Points) - pontos de experiência. Acumulam ao matar inimigos, e ao atingir certos limiares o personagem sobe de nível.
  • Game loop - laço principal que orquestra o jogo: lê input, atualiza estado, renderiza, repete. Pulso do jogo.
  • Estado do jogo - conjunto de todas as variáveis que descrevem o jogo num momento (posição do herói, HP, inventário, mapa, etc.).
  • Renderização - desenhar o estado atual na tela. No nosso caso, imprimir caracteres ASCII no terminal.
  • Turno - uma iteração do game loop onde o jogador faz uma ação. Em jogos baseados em turnos como o nosso, o tempo do jogo só avança quando o jogador escolhe.
  • Tile - célula da grade 2D do mapa. Cada tile representa parede, chão, porta, escada, etc.
  • Inventário - lista de itens que o herói carrega.
  • Boss - inimigo mais forte, geralmente no fim de uma fase ou andar.
  • Spawn - ato de criar uma entidade (inimigo, item) numa posição do mapa.
  • FOV (field of view) - campo de visão. Conjunto de tiles visíveis ao herói naquele momento.
  • Fog of war (névoa de guerra) - tiles que o herói já viu, mas não vê agora. Geralmente desenhados em tom acinzentado.
  • Geração procedural - criar conteúdo (mapas, inimigos, itens) por algoritmo, em vez de à mão. Cada partida fica única.

Termos de terminal

  • Shell - programa que interpreta os comandos que você digita. bash (Linux/macOS clássico), zsh (macOS moderno), PowerShell (Windows), fish, etc.
  • Prompt - o sinal no terminal indicando “estou esperando seu comando”. Geralmente termina em $ ou >.
  • cd (change directory) - comando para mudar de pasta. Ex: cd projetos.
  • ls (Linux/macOS) / dir (Windows) - lista os arquivos da pasta atual.
  • pwd (print working directory) - mostra em qual pasta você está agora.
  • PATH - variável de ambiente que lista as pastas onde o sistema procura programas executáveis. Quando você digita dart, o sistema procura dart em cada pasta do PATH.
  • ANSI escape codes - sequências especiais de caracteres que controlam cor, posição do cursor e formatação no terminal. Ex:  muda para vermelho.
  • Stdin - entrada padrão. O que o usuário digita no teclado.
  • Stdout - saída padrão. O que o programa imprime na tela com print() vai para o stdout.

Quando voltar aqui

Não tente memorizar este glossário agora. Leia rapidamente uma vez para criar familiaridade visual com os termos - você vai reconhecer quando aparecerem no livro principal.

Quando esbarrar com um termo no livro e não tiver certeza do significado, volte aqui e confira a definição curta. Depois siga em frente. Glossário é referência, não conteúdo de leitura linear.

Os termos crescem em profundidade ao longo do livro. Variável aqui é “caixa com nome”; no Capítulo 8 vira “atributo de classe”; no Capítulo 24 vira “parâmetro de tipo genérico”. Cada definição aqui é o ponto de partida; o significado real se constrói no contexto.

$ masmorra_ascii — terminal interativo
Bem-vindo. Digite help para ver os comandos. Esc para sair.
$