Exemplos de Uso e Finalidades
Compartilhado por um usuário do Flashcards.gg · gerado com IA · Denunciar este conjunto
Conceitos e ferramentas essenciais de desenvolvimento de software e computação, explicados para estudantes e profissionais da área.
Toque no cartão para virar
Cartões · 52
- Git
- Controlar versões de arquivos e código-fonte, permitindo rastrear mudanças e colaborar em equipe sem sobrescrever o trabalho alheio.
- GitHub
- Hospedar repositórios Git na nuvem, facilitando o compartilhamento de código, revisão por pull requests e automação de projetos.
- Docker
- Empacotar aplicações e suas dependências em contêineres leves, garantindo funcionamento idêntico em qualquer ambiente.
- Kubernetes
- Orquestrar contêineres em escala, automatizando implantação, escalonamento horizontal e recuperação de falhas em servidores.
- API REST
- Padronizar a comunicação entre sistemas diferentes usando os métodos HTTP convencionais, como GET, POST, PUT e DELETE.
- JSON
- Estruturar e transmitir dados textuais de forma simples e legível, amplamente utilizado na troca de dados entre front-end e back-end.
- Banco de dados relacional (SQL)
- Armazenar informações organizadas em tabelas conectadas por chaves, ideal para transações que exigem consistência rigorosa.
- Banco de dados NoSQL
- Lidar com grandes volumes de dados não estruturados ou flexíveis, como documentos e grafos, priorizando escalabilidade horizontal.
- Redis
- Armazenar dados em memória RAM com ultra baixa latência, muito usado para cache de consultas frequentes e gerenciamento de sessões.
- GraphQL
- Consultar dados em APIs permitindo que o cliente solicite exatamente os campos necessários, evitando excesso ou falta de dados.
- CI/CD (Integração e Entrega Contínuas)
- Automatizar a compilação, teste e publicação de software em produção de maneira rápida, confiável e repetível.
- VPN (Virtual Private Network)
- Criptografar o tráfego de internet e mascarar o IP real do usuário, protegendo dados confidenciais em redes públicas.
- Firewall
- Filtrar e monitorar o tráfego de rede com base em regras de segurança, bloqueando acessos não autorizados a sistemas.
- Certificado SSL/TLS
- Criptografar a comunicação entre o navegador e o servidor web, ativando o protocolo HTTPS e garantindo privacidade.
- JWT (JSON Web Token)
- Autenticar usuários e trocar informações de identidade assinadas digitalmente e de forma compacta e sem estado (stateless).
- OAuth 2.0
- Permitir que aplicativos de terceiros acessem recursos de um usuário com segurança sem compartilhar senhas diretas.
- Servidor Proxy Reverso (ex: Nginx)
- Ficar à frente dos servidores web para balancear carga, gerenciar cache e servir conteúdo estático eficientemente.
- Load Balancer (Balanceador de Carga)
- Distribuir requisições de tráfego uniformemente entre vários servidores para evitar sobrecargas e garantir alta disponibilidade.
- CDN (Content Delivery Network)
- Distribuir arquivos estáticos por servidores espalhados pelo mundo, reduzindo o tempo de carregamento de páginas web.
- Servidor DNS
- Traduzir nomes de domínio fáceis de memorizar (como site.com) nos endereços IP numéricos que os computadores utilizam.
- Microserviços
- Estruturar uma aplicação como um conjunto de serviços menores e independentes que se comunicam via rede, facilitando manutenção.
- Message Broker (ex: RabbitMQ, Kafka)
- Gerenciar filas e mensagens entre sistemas de forma assíncrona, desacoplando tarefas demoradas do fluxo principal.
- ORM (Object-Relational Mapping)
- Mapear tabelas de banco de dados diretamente para classes de código, permitindo manipular dados sem escrever SQL cru.
- Webpack / Vite
- Empacotar e otimizar arquivos JavaScript, CSS e imagens para entrega rápida e eficiente no navegador do usuário.
- CSS Flexbox
- Organizar elementos de uma página em uma única dimensão (linha ou coluna) de forma flexível e responsiva a diferentes telas.
- CSS Grid
- Construir layouts bidimensionais complexos no navegador, definindo linhas e colunas simultâneas com precisão.
- DOM (Document Object Model)
- Representar uma página HTML como uma árvore de objetos em memória para que o JavaScript possa alterar seu conteúdo dinamicamente.
- LocalStorage
- Guardar pares de chave e valor no navegador do cliente sem data de expiração, persistindo após o fechamento da aba.
- Cookies HTTP
- Guardar pequenas informações no navegador que são enviadas automaticamente ao servidor a cada nova requisição web.
- WebSockets
- Manter uma conexão bidirecional e em tempo real aberta entre cliente e servidor, essencial para chats e jogos online.
- Servidor Web (ex: Apache, Nginx)
- Processar requisições HTTP e entregar páginas HTML, arquivos estáticos ou encaminhar para a aplicação de back-end.
- Terraform
- Definir e provisionar infraestrutura em nuvem através de arquivos de configuração em código (IaC), garantindo padronização.
- Ansible
- Automatizar a configuração e o gerenciamento de servidores sem precisar de agentes instalados nas máquinas remotas.
- Linux Bash
- Controlar o sistema operacional por meio de linhas de comando e scripts, automatizando tarefas repetitivas do sistema.
- SSH (Secure Shell)
- Acessar e gerenciar computadores e servidores remotos de forma segura e totalmente criptografada via terminal.
- Cron Job
- Agendar tarefas e rotinas automáticas no Linux para rodarem periodicamente em horários ou intervalos programados.
- Elasticsearch
- Realizar buscas textuais ultrarrápidas e análises complexas em tempo real sobre grandes volumes de documentos e logs.
- Prometheus
- Coletar e monitorar métricas operacionais de infraestrutura e serviços em tempo real para disparar alertas preventivos.
- Grafana
- Montar painéis visuais intuitivos e gráficos dinâmicos para acompanhar métricas de servidores e aplicações.
- Regex (Expressões Regulares)
- Buscar, validar ou substituir padrões específicos dentro de textos, como validar formatos de e-mails ou CPFs.
- Linter (ex: ESLint)
- Analisar código-fonte estático para encontrar erros de sintaxe, más práticas e problemas de estilo antes da execução.
- Transpilador (ex: Babel)
- Converter código moderno recente em versões compatíveis com navegadores mais antigos que não suportam novos recursos.
- TypeScript
- Adicionar tipagem estática e segurança contra erros comuns de tipo ao ecossistema da linguagem JavaScript.
- Testes Unitários
- Garantir que partes isoladas e específicas do código, como funções individuais, funcionem corretamente conforme o esperado.
- Testes de Integração
- Verificar se diferentes módulos e componentes do sistema operam juntos sem falhas na comunicação e nos dados.
- Testes E2E (End-to-End)
- Simular as ações completas de um usuário real no sistema para validar a experiência de uso do início ao fim.
- Ambiente Virtual (ex: venv)
- Isolar bibliotecas e dependências de um projeto Python específico para evitar conflitos de versão globais na máquina.
- Serverless (ex: AWS Lambda)
- Executar funções pontuais na nuvem sem precisar gerenciar servidores dedicados, pagando apenas pelo tempo de processamento.
- Computação em Nuvem (Cloud)
- Fornecer poder computacional, servidores e armazenamento sob demanda pela internet sem necessidade de hardware físico local.
- Blockchain
- Registrar dados em um livro-razão distribuído, seguro e imutável entre vários nós, sem controle de uma autoridade central.
- Rede Neural Artificial
- Processar dados complexos imitando conexões neurais biológicas para reconhecer padrões em visão, áudio e texto.
- LLM (Modelo de Linguagem Amplo)
- Compreender e gerar linguagem natural humana coerente a partir do processamento estatístico de imensos volumes de texto.