Dicionário do desenvolvedor: mais de 100 termos explicados
Para acompanhar este artigo
Nível: Iniciante
Pré-requisitos
- Nenhuma experiência profissional é necessária.
- Um editor de texto para montar seu próprio mapa de conceitos.
Critérios editoriais e correções · Sugerir uma melhoria
Neste artigo
Introdução
Quem começa a estudar programação percebe rapidamente que aprender uma linguagem como PHP, Python, JavaScript ou Java é apenas uma parte do caminho. Existe outro desafio: compreender o vocabulário utilizado pelos profissionais da área.
Como usar este glossário sem confundir tecnologias
Um conceito geral não garante que toda implementação ofereça o mesmo recurso. Por exemplo, FULL OUTER JOIN aparece no SQL de alguns bancos, mas não é oferecido como sintaxe nativa de SELECT no MySQL atual. OAuth 2.0 trata autorização; autenticação federada normalmente acrescenta OpenID Connect. HTTPS protege o transporte, mas não corrige falhas de autorização da aplicação.
Documentação: MDN Glossary · MySQL JOIN.
Expressões como workflow, server, runtime, endpoint, container, pipeline, middleware, commit e deploy aparecem constantemente em documentações, cursos, reuniões e projetos.
Este glossário reúne mais de 100 conceitos de programação, infraestrutura, desenvolvimento web, banco de dados, engenharia de software, DevOps e inteligência artificial. A proposta não é apenas traduzir as palavras, mas explicar o que significam, para que servem e onde aparecem na prática.
Conceitos fundamentais da programação
Algorithm (Algoritmo)
Sequência organizada de instruções para resolver um problema ou executar uma tarefa, como calcular valores, ordenar informações ou pesquisar dados.
Source Code (Código-fonte)
Conjunto de instruções escritas em uma linguagem de programação. Arquivos PHP, Python, JavaScript e Java fazem parte do código-fonte de uma aplicação.
Syntax (Sintaxe)
Conjunto de regras que determina como as instruções devem ser escritas em uma linguagem.
Logic (Lógica)
Estrutura de raciocínio utilizada para determinar como um programa deve funcionar, incluindo condições, decisões e repetições.
Variable (Variável) e Constant (Constante)
Variável é um identificador associado a um valor que pode ser utilizado e, quando permitido, alterado durante a execução. Constante é associada a um valor que não deve ser alterado. Exemplo PHP: $nome = "Carlos";.
Function (Função) e Method (Método)
Função é um bloco de código reutilizável. Método é uma função associada a uma classe ou objeto.
Class (Classe), Object (Objeto) e Instance (Instância)
Classe define propriedades e comportamentos. Objeto é uma entidade criada em memória com dados e comportamentos. Instância é um objeto concreto criado a partir de uma classe.
Parameter (Parâmetro), Argument (Argumento) e Return (Retorno)
Parâmetro é a variável declarada na definição de uma função. Argumento é o valor enviado quando a função é chamada. Return é o resultado devolvido pela função.
Condition (Condição) e Loop (Laço)
Condição permite executar instruções conforme uma expressão, como em if e else. Loop repete instruções, como for, while e foreach.
Exception (Exceção), Error (Erro), Debug (Depuração) e Bug
Exceção é uma ocorrência que altera o fluxo normal e pode ser tratada. Erro é uma falha. Debug é o processo de investigar o código. Bug é um comportamento incorreto ou inesperado.
Refactoring (Refatoração)
Reorganização do código sem alterar seu comportamento externo, buscando melhorar estrutura, legibilidade e manutenção.
Desenvolvimento de software e arquitetura
Workflow (Fluxo de trabalho)
Sequência organizada de atividades necessárias para concluir um processo. Na programação, pode representar o fluxo de desenvolvimento ou uma automação que executa testes e publica uma aplicação.
Exemplo: o desenvolvedor altera o código, envia as mudanças ao Git, um sistema executa testes, valida o resultado e realiza o deploy. Em plataformas como GitHub Actions, workflows podem ser definidos em arquivos YAML e disparados por eventos.
Pipeline
Sequência de etapas automatizadas que processam dados ou executam tarefas. Em DevOps, pode compilar, testar, validar e publicar uma aplicação. Workflow é mais abrangente; pipeline costuma enfatizar uma sequência de processamento.
Architecture (Arquitetura) e Design Pattern (Padrão de projeto)
Arquitetura organiza os componentes, responsabilidades e formas de comunicação de um sistema. Design Pattern é uma solução reutilizável para problemas recorrentes, como Singleton, Factory, Repository e Observer.
MVC (Model-View-Controller)
Padrão arquitetural que separa responsabilidades: Model trabalha com dados e regras, View apresenta informações e Controller recebe solicitações e coordena operações.
Modularization (Modularização)
Divisão de um sistema em partes menores, organizadas por responsabilidades.
Dependency (Dependência) e Dependency Injection (Injeção de dependência)
Dependência é uma biblioteca, pacote, componente ou serviço necessário a outro software. Injeção de dependência é uma técnica na qual um componente recebe suas dependências externamente.
Middleware
Componente intermediário que executa operações durante o processamento de uma requisição. Pode verificar autenticação, permissões, registrar acessos ou modificar informações.
Framework e Library (Biblioteca)
Framework oferece estrutura, componentes e convenções para construir aplicações, como Laravel, Symfony, Django e Angular. Biblioteca oferece funcionalidades reutilizáveis que o desenvolvedor chama quando precisa. Em um framework, a estrutura normalmente controla parte do fluxo da aplicação.
SDK (Software Development Kit)
Conjunto de ferramentas, bibliotecas, documentação e recursos que facilita o desenvolvimento para uma plataforma ou serviço.
API (Application Programming Interface)
Interface que permite que sistemas ou componentes se comuniquem por regras definidas. Uma aplicação pode usar uma API de pagamento sem implementar toda a infraestrutura bancária.
Endpoint
Endereço específico disponibilizado por uma API para realizar uma operação. Exemplo: https://api.exemplo.com/usuarios.
Request, Response e Payload
Request é uma solicitação enviada a um servidor. Response é a resposta devolvida. Payload é o conjunto de dados transportados, por exemplo, no corpo de uma requisição HTTP.
JSON e XML
JSON é um formato textual leve para representar dados estruturados. XML é uma linguagem de marcação usada para estruturar e transportar informações.
Serialization (Serialização) e Deserialization (Desserialização)
Serialização converte objetos ou estruturas de dados para um formato armazenável ou transmissível. Desserialização reconstrói estruturas utilizáveis a partir desses dados.
Servidores, infraestrutura e virtualização
Server (Servidor)
Servidor pode significar um computador físico ou virtual, ou o programa que fornece serviços a outros sistemas. Um servidor pode executar aplicações, armazenar dados e responder a solicitações de clientes.
Quando alguém acessa um site, o navegador envia uma requisição ao servidor web. O servidor processa a solicitação e devolve uma resposta. Tipos comuns: Web Server, Database Server, File Server, Application Server, Mail Server e DNS Server.
Client (Cliente) e Client-Server Architecture
Cliente é o dispositivo ou programa que solicita serviços. A arquitetura cliente-servidor organiza a comunicação entre clientes que solicitam e servidores que processam.
Host e Hosting (Hospedagem)
Host é o computador, VM ou ambiente que hospeda um serviço. Hosting é o serviço ou infraestrutura usada para hospedar sites e aplicações.
VPS (Virtual Private Server)
Servidor virtual disponibilizado em infraestrutura física compartilhada. Cada VPS possui recursos e ambiente operacional próprios, com determinado nível de isolamento.
VM (Virtual Machine ou Máquina Virtual)
Computador virtual criado por software, com processador, memória, disco e dispositivos de rede virtuais. Pode executar seu próprio sistema operacional. Instalar Debian ou Ubuntu dentro do VMware ou VirtualBox permite usar outro sistema sem precisar de um segundo computador físico.
Hypervisor
Camada de software responsável por criar, executar e administrar máquinas virtuais. Exemplos: VMware ESXi, Microsoft Hyper-V e KVM.
Host Operating System e Guest Operating System
Host Operating System é o sistema da máquina que hospeda as VMs, quando aplicável. Guest Operating System é o sistema instalado dentro de uma máquina virtual.
Container (Contêiner) e Docker
Contêiner é um ambiente isolado para executar aplicações e dependências. Diferentemente de uma VM tradicional, normalmente compartilha o kernel do sistema operacional hospedeiro. Docker é uma plataforma para criar, distribuir e executar aplicações em contêineres.
Image (Imagem de contêiner) e Volume
Imagem é um modelo com arquivos e configurações necessários para criar contêineres. Volume persiste dados, evitando que informações importantes dependam do ciclo de vida do contêiner.
Orchestration e Kubernetes (K8s)
Orquestração é a coordenação automatizada de serviços e componentes. Kubernetes é uma plataforma de código aberto para administrar aplicações em contêineres, incluindo implantação, escalabilidade e recuperação de falhas.
Cloud Computing (Computação em nuvem) e On-Premises
Cloud Computing disponibiliza recursos computacionais pela internet, como servidores e bancos de dados. Exemplos: AWS, Azure e Google Cloud. On-Premises significa executar e administrar a infraestrutura nas próprias instalações da organização.
SSH (Secure Shell)
Protocolo para acessar e administrar computadores remotamente de maneira criptografada. Exemplo: ssh usuario@192.168.1.100.
DNS (Domain Name System)
Sistema que traduz nomes de domínio, como exemplo.com, em endereços IP.
IP Address e Port (Porta)
IP Address identifica um dispositivo ou interface em uma rede. Port é um número lógico que identifica serviços em uma comunicação. Exemplos: 80 para HTTP, 443 para HTTPS e 22 para SSH.
Firewall
Mecanismo de segurança que controla o tráfego de rede conforme regras estabelecidas.
Proxy, Reverse Proxy e Load Balancer
Proxy é um intermediário que encaminha solicitações. Reverse Proxy recebe requisições externas e as encaminha a servidores internos. Load Balancer distribui requisições entre servidores para melhorar disponibilidade e desempenho.
Banco de dados e SQL
Database (Banco de dados) e DBMS / SGBD
Banco de dados é um conjunto organizado de informações. DBMS ou SGBD é o software que administra bancos de dados, como MySQL, PostgreSQL, MariaDB e SQL Server.
Table, Row e Column
Table é uma tabela; Row é uma linha ou registro; Column é uma coluna que representa um atributo.
Primary Key e Foreign Key
Primary Key identifica cada registro. Foreign Key é usada para estabelecer relacionamentos entre tabelas.
Query (Consulta) e SQL
Query é uma solicitação feita ao banco para recuperar ou manipular informações. SQL (Structured Query Language) é a linguagem utilizada para consultar e manipular bancos relacionais.
Clause (Cláusula)
Uma cláusula é uma parte de uma instrução SQL que define uma operação, origem, condição ou ordenação. Na consulta abaixo, SELECT, FROM, WHERE e ORDER BY são cláusulas:
SELECT nome, idade
FROM usuarios
WHERE idade >= 18
ORDER BY nome ASC;- SELECT: define quais informações serão retornadas.
- FROM: determina de onde os dados serão consultados.
- WHERE: estabelece condições para filtrar registros.
- ORDER BY: determina a ordenação.
- GROUP BY: agrupa registros.
- HAVING: filtra grupos.
- LIMIT: limita resultados em bancos que oferecem essa sintaxe.
- JOIN: combina informações de tabelas relacionadas.
Clause também aparece em outros contextos; seu significado depende da linguagem ou tecnologia.
JOIN
Operação SQL que combina registros de tabelas relacionadas. Tipos comuns: INNER JOIN, LEFT JOIN, RIGHT JOIN e FULL OUTER JOIN.
Index (Índice)
Estrutura criada para acelerar determinadas consultas, com custo adicional de armazenamento e manutenção.
Transaction (Transação) e ACID
Transação é um conjunto de operações tratado como unidade lógica. ACID representa Atomicity, Consistency, Isolation e Durability: atomicidade, consistência, isolamento e durabilidade.
Schema (Esquema) e Migration (Migração)
Schema define como os dados são organizados. Migration controla alterações na estrutura do banco ao longo do desenvolvimento.
ORM (Object-Relational Mapping)
Técnica que permite trabalhar com bancos relacionais utilizando objetos e estruturas da linguagem. Exemplos: Eloquent, Doctrine e Hibernate.
NoSQL e Cache
NoSQL reúne categorias de bancos que não seguem necessariamente o modelo relacional tradicional, como MongoDB e Redis. Cache é armazenamento temporário usado para acelerar o acesso a informações frequentes.
Git, desenvolvimento colaborativo e DevOps
Git e Repository (Repositório)
Git é um sistema de controle de versão. Repositório é o local onde ficam os arquivos do projeto e seu histórico.
Commit, Branch e Merge
Commit registra alterações. Branch é uma linha independente de desenvolvimento. Merge combina alterações de branches diferentes.
Pull Request (PR)
Solicitação para revisar e integrar alterações de código em outra branch.
Clone, Fork, Push, Pull e Fetch
Clone copia um repositório para o ambiente local. Fork cria uma cópia independente. Push envia commits locais ao repositório remoto. Pull busca e integra alterações remotas. Fetch busca atualizações sem integrá-las automaticamente à branch atual.
Merge Conflict
Conflito que ocorre quando alterações incompatíveis precisam ser combinadas.
CI (Continuous Integration)
Integração Contínua é a prática de integrar alterações frequentemente e submetê-las a validações e testes automatizados.
CD (Continuous Delivery e Continuous Deployment)
Continuous Delivery mantém o software validado e pronto para publicação. Continuous Deployment automatiza também a publicação em produção após as validações.
Build e Artifact (Artefato)
Build transforma código e componentes em um resultado executável ou distribuível. Artifact é o resultado produzido, como um pacote ou imagem de contêiner.
Deploy, Rollback e Release
Deploy disponibiliza uma aplicação em determinado ambiente. Rollback retorna a uma versão ou configuração anterior. Release é uma versão preparada para distribuição.
Runner e YAML
Runner é o ambiente computacional que executa tarefas automatizadas de um workflow. YAML é um formato textual para configurações estruturadas, utilizado em GitHub Actions, Docker Compose e Kubernetes.
Desenvolvimento web e comunicação
Front-end, Back-end e Full Stack
Front-end é a parte com a qual o usuário interage. Back-end processa regras de negócio, dados e integrações. Full Stack é o perfil que trabalha nas duas partes.
HTTP e HTTPS
HTTP é o protocolo de comunicação utilizado na web. HTTPS é HTTP protegido por criptografia TLS.
REST e RESTful API
REST é um estilo arquitetural para serviços que disponibilizam recursos por interfaces HTTP. RESTful API é uma API que segue seus princípios.
CRUD
Representa Create, Read, Update e Delete: criar, consultar, atualizar e excluir dados.
Métodos HTTP: GET, POST, PUT, PATCH e DELETE
GET normalmente consulta recursos. POST envia dados e frequentemente cria recursos. PUT substitui a representação de um recurso. PATCH realiza alterações parciais. DELETE solicita a exclusão.
Webhook
Mecanismo pelo qual um sistema envia automaticamente uma notificação ou solicitação HTTP a outro quando determinado evento acontece.
CORS
Cross-Origin Resource Sharing (CORS) usa cabeçalhos HTTP para indicar quando scripts de outra origem podem acessar uma resposta no navegador. Não substitui autenticação, autorização ou firewall; clientes fora do navegador não seguem essa política como controle de acesso.
SSL/TLS
Tecnologias relacionadas à proteção criptográfica das comunicações. SSL é antigo e obsoleto; atualmente utiliza-se TLS.
JWT (JSON Web Token)
JSON Web Token (JWT) é um formato de representação de informações que pode ser assinado ou criptografado conforme o padrão usado. Um JWT assinado não oculta seus dados: não coloque segredos em payloads apenas codificados em Base64URL. Valide assinatura, emissor, audiência, expiração e autorização no servidor.
OAuth 2.0
Framework de autorização que permite conceder acesso limitado a recursos sem compartilhar diretamente a senha do usuário com a aplicação cliente.
Authentication (Autenticação) e Authorization (Autorização)
Autenticação verifica a identidade de um usuário ou sistema. Autorização determina quais recursos e operações essa identidade pode acessar. São conceitos diferentes.
Inteligência artificial e desenvolvimento com IA
AI (Artificial Intelligence)
Área da computação dedicada a desenvolver sistemas capazes de executar tarefas associadas à inteligência humana.
Machine Learning e Deep Learning
Machine Learning é a área em que modelos aprendem padrões a partir de dados. Deep Learning é uma área baseada em redes neurais com múltiplas camadas.
LLM (Large Language Model)
Grande modelo de linguagem treinado para compreender e gerar textos e outros conteúdos. Exemplos incluem modelos GPT, Claude e Gemini.
Prompt e Prompt Engineering
Prompt é a instrução fornecida a um modelo. Prompt Engineering é a prática de estruturar instruções para melhorar a qualidade e a previsibilidade das respostas.
Token e Context Window
Token é uma unidade de representação que não equivale necessariamente a uma palavra. A janela de contexto limita o material processado conforme o modelo; entrada, saída e raciocínio podem compartilhar limites ou possuir limites específicos. Verifique a documentação do modelo e os limites do produto.
Embedding e Vector Database
Embedding é uma representação numérica de informações, como textos e imagens, usada para representar características e relações semânticas. Vector Database é um sistema especializado em armazenar e pesquisar vetores.
RAG (Retrieval-Augmented Generation)
Arquitetura que permite que um modelo consulte informações externas antes de gerar uma resposta. Um assistente pode pesquisar documentos internos antes de responder.
Agent (Agente de IA)
Sistema baseado em IA capaz de interpretar objetivos, planejar etapas e utilizar ferramentas para executar tarefas.
Tool Calling (Chamada de ferramentas)
Capacidade de um modelo solicitar a execução de funções ou ferramentas externas.
MCP (Model Context Protocol)
Protocolo aberto que padroniza a comunicação entre aplicações de IA e sistemas externos. Permite conectar assistentes a bancos de dados, sistemas de arquivos, APIs e ferramentas de desenvolvimento.
A arquitetura possui três participantes principais: Host, aplicação que utiliza a IA e coordena conexões; Client, componente que estabelece a comunicação com um servidor MCP; e Server, programa que disponibiliza funcionalidades e informações por meio do protocolo.
Um servidor MCP pode oferecer Tools (ferramentas executáveis), Resources (informações para consulta) e Prompts (modelos reutilizáveis de instruções). Por exemplo, um servidor conectado a um banco pode disponibilizar a ferramenta consultar_usuarios. MCP não é um modelo de IA, banco de dados ou API específica: é um protocolo de comunicação e integração.
AI Workflow
Fluxo de trabalho que utiliza IA em uma ou mais etapas, como receber um documento, extrair informações, classificar conteúdo e gerar um relatório.
Fine-tuning e Inference (Inferência)
Fine-tuning ajusta um modelo previamente treinado com dados adicionais. Inferência é o processo de utilizar um modelo treinado para produzir uma resposta ou previsão.
Hallucination (Alucinação) e Guardrails
Alucinação ocorre quando um modelo apresenta informações incorretas ou inventadas como verdadeiras. Guardrails são mecanismos e regras para orientar e controlar o comportamento de sistemas de IA.
Segurança e qualidade de software
Encryption (Criptografia)
Transforma informações em uma representação protegida, que exige uma chave ou mecanismo apropriado para recuperação.
Hash
Resultado de uma função matemática que transforma dados em uma representação de tamanho geralmente fixo. É usado em verificações de integridade e armazenamento de senhas com algoritmos apropriados.
Vulnerability (Vulnerabilidade)
Falha que pode ser explorada para comprometer a segurança de um sistema.
Authentication Token
Credencial digital utilizada para identificar uma sessão ou autorizar determinado acesso.
Rate Limiting
Técnica que limita a quantidade de requisições permitidas em determinado intervalo.
Logging e Monitoring
Logging registra eventos durante a execução. Monitoring acompanha funcionamento, desempenho e disponibilidade.
Observability (Observabilidade)
Capacidade de compreender o estado interno de um sistema a partir dos dados que ele produz. Seus pilares mais conhecidos são logs, métricas e traces.
Unit Test, Integration Test e E2E Test
Teste unitário verifica uma unidade de código isoladamente. Teste de integração verifica a comunicação entre componentes. Teste End-to-End verifica um fluxo completo de utilização.
Code Review
Processo de analisar alterações de código antes de sua integração ao projeto.
Technical Debt (Dívida técnica)
Custo futuro associado a decisões técnicas que facilitam o desenvolvimento imediato, mas podem aumentar a complexidade de manutenção.
Termos utilizados no trabalho diário
Backlog e Sprint
Backlog é uma lista organizada de tarefas, funcionalidades e correções pendentes. Sprint é um período de trabalho definido, especialmente no Scrum.
Task, Issue e Ticket
Task é uma tarefa. Issue é um registro de problema, solicitação ou melhoria. Ticket acompanha uma solicitação, problema ou atividade.
Milestone e Deadline
Milestone é um marco importante de uma entrega ou etapa. Deadline é o prazo final para concluir uma atividade.
Stakeholder
Pessoa ou organização que possui interesse ou é impactada por um projeto.
MVP (Minimum Viable Product)
Versão mínima viável de um produto, desenvolvida para validar uma ideia com funcionalidades essenciais.
POC (Proof of Concept)
Prova de conceito criada para demonstrar que uma ideia ou solução é tecnicamente viável.
Prototype (Protótipo)
Representação inicial de um produto, utilizada para avaliar funcionalidades, aparência ou experiência de uso.
Legacy System (Sistema legado)
Sistema antigo que continua sendo utilizado, geralmente por depender de regras, integrações ou processos existentes.
Scalability, Performance, Latency e Throughput
Scalability é a capacidade de suportar crescimento de usuários, operações ou dados. Performance mede a eficiência do sistema. Latency é o tempo necessário para uma operação produzir resposta. Throughput é a quantidade de operações ou dados processados em um intervalo.
Uptime e Downtime
Uptime é o período em que um sistema permanece disponível. Downtime é o período de indisponibilidade.
Como esses termos se relacionam na prática?
Imagine um sistema web desenvolvido em PHP. O projeto utiliza um framework no back-end, uma API para comunicação com outros sistemas e um banco MySQL. A aplicação está hospedada em um server, que pode funcionar dentro de uma VM.
O código fica em um repository Git. Quando o desenvolvedor realiza um commit e envia um push, um workflow pode ser iniciado automaticamente. Esse workflow executa um pipeline de CI/CD, realiza o build, executa testes e prepara o deploy. Depois, um assistente de IA pode utilizar um MCP Server para acessar ferramentas de desenvolvimento ou consultar informações do projeto.
Pratique: Explicar o caminho de uma requisição com palavras do glossário.
Use este roteiro para transformar a leitura em uma verificação concreta.
- Escolha uma ação conhecida, como entrar em um site. Descreva a interação entre navegador, DNS, HTTPS, servidor, aplicação e banco de dados.
- Marque os pontos de autenticação, autorização, validação, sessão e cache. Para cada termo, escreva uma frase sobre sua função naquele fluxo.
- Apresente um problema possível, como uma resposta 500, e indique quais registros e componentes você consultaria primeiro. Use os termos como ferramentas de investigação, não apenas como definições decoradas.
Como conferir o resultado
Se você consegue dar um exemplo e um contraexemplo, o conceito está mais claro. Entrar na conta não autoriza automaticamente qualquer ação; uma API não é necessariamente pública; um backup não é sinônimo de alta disponibilidade. Volte aos verbetes ao encontrar essas diferenças em código real.
Continue o estudo: Servidor PHP no Linux: Apache, SSH e MySQL ou MariaDB · SQL Injection em PHP: identificar e prevenir com PDO.
Conclusão
Conhecer o vocabulário técnico da programação é tão importante quanto aprender a escrever código. Entender conceitos como Server, VM, Workflow, API, Middleware, Container, Pipeline, Deploy e MCP facilita a leitura de documentações, a compreensão de arquiteturas e a participação em discussões técnicas.
Não é necessário memorizar tudo de uma vez. O melhor caminho é compreender o significado dos termos e identificar como são utilizados em projetos reais. Programar não é apenas escrever instruções em uma linguagem: é compreender como diferentes tecnologias, serviços e componentes trabalham juntos para construir soluções.
Referências técnicas
Retome suas leituras no histórico. Suas últimas visitas ficam salvas neste navegador, mesmo sem conta.
Este artigo foi útil?
Ajude-nos a melhorar avaliando este conteúdo.
Teste seus conhecimentos
Esta área é exclusiva para usuários cadastrados. Entre ou crie sua conta para responder ao teste.
Comentários
Ainda não há comentários. Seja o primeiro a participar!
Quer participar da conversa? Entre na sua conta para comentar.