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'senome == 'Aragorn'. null- valor especial que significa “nada”. Variáveis declaradas com tipo nullable (String?) podem sernull; 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 acessarstdin.package:- prefixo usado em imports que apontam para bibliotecas instaladas viadart 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 procuradartem 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:
[31mmuda 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.