~//guides
Guides
Long-form, practical guides for every technology on the roadmap. Pick a topic and go deep, or follow the roadmap in order.
120 guides
Internet & How it Works
Como a Internet Funciona
A internet é uma rede de redes que move pacotes entre computadores. Entender clientes, servidores, IP e o ciclo de requisição/resposta torna toda a web menos misteriosa.
15 min readHTTP & HTTPS
HTTP é o protocolo da web. Métodos, códigos de status, headers e cache são o vocabulário sobre o qual cada API e cada carregamento de página são construídos.
16 min readDNS & Domínios
O DNS é a agenda telefônica da internet. Ele converte nomes legíveis por humanos, como example.com, nos endereços IP que as máquinas utilizam, e alguns poucos tipos de registros cobrem quase todas as configurações.
13 min readBrowsers & Rendering
Um navegador transforma HTML, CSS e JavaScript em pixels. Compreender o parsing, o DOM, o caminho crítico de renderização (critical rendering path) e os reflows torna a performance muito menos misteriosa.
15 min readHTML
HTML
HTML é a linguagem de marcação que dá estrutura e significado a cada página web. Veja o que ela é, como funciona e como começar a usá-la hoje mesmo.
14 min readHTML Semântico
O HTML semântico utiliza elementos que descrevem seu significado. Isso torna as páginas acessíveis, encontráveis e mais fáceis de manter, sem custo adicional.
14 min readFormulários & Validação
Formulários são a maneira como os usuários enviam dados para o seu app. Labels, os tipos de input corretos e a validação nativa resolvem a maior parte do trabalho antes mesmo de você escrever qualquer JavaScript.
14 min readAcessibilidade (a11y)
Acessibilidade não é um complemento. Marcação semântica, suporte ao teclado e contraste claro tornam seu site utilizável por todos e o melhoram para cada usuário.
15 min readFundamentos de SEO
Os motores de busca rastreiam páginas, as compreendem e as classificam. Bases técnicas sólidas, conteúdo claro e dados estruturados oferecem a melhor chance de ser encontrado.
14 min readCSS
CSS
CSS é a linguagem que controla a aparência e o layout do seu HTML na tela. Veja o que ela é, como funciona e como começar a usá-la hoje mesmo.
14 min readCSS Box Model
O box model é a base do layout em CSS. Cada elemento é uma caixa com conteúdo, padding, border e margin — aprenda como ele funciona e como controlá-lo.
14 min readFlexbox
Flexbox é um modelo de layout CSS que facilita o alinhamento e a distribuição de espaço entre itens em um container. Veja como ele funciona e como utilizá-lo.
14 min readCSS Grid
CSS Grid é um sistema de layout bidimensional que permite organizar elementos em linhas e colunas. Aprenda como ele funciona, quando utilizá-lo e como construir layouts modernos sem gambiarras.
14 min readDesign Responsivo
O design responsivo faz com que um único layout funcione em qualquer tela. Uma tag viewport, unidades fluidas e media queries mobile-first cobrem a grande maioria dos casos.
15 min readAnimações & Transições
Transições e keyframes em CSS dão vida às interfaces sem a necessidade de JavaScript. Animando as propriedades corretas, o movimento permanece fluido e acessível.
14 min readVariáveis CSS
Propriedades customizadas são valores que você define uma vez e reutiliza em qualquer lugar. Diferente de variáveis de pré-processadores, elas vivem no navegador e podem mudar em tempo de execução.
13 min readCSS Frameworks & Styling
JavaScript
JavaScript
JavaScript é a linguagem de programação da web. Ela transforma páginas estáticas em experiências interativas — veja o que ela é, onde é executada e como começar a escrever hoje mesmo.
16 min readO DOM
O Document Object Model é a ponte entre seu HTML e seu JavaScript. Aprenda a selecionar, criar, atualizar e remover elementos, e como reagir às ações dos usuários.
15 min readJavaScript Moderno (ES6+)
O ES6 e as versões que se seguiram transformaram o JavaScript de uma linguagem de script peculiar em um prazer de escrever. Aqui estão os recursos que você usará todos os dias.
15 min readJavaScript Assíncrono
O JavaScript executa uma coisa de cada vez, mas nunca trava enquanto espera. O event loop, callbacks, promises e async/await são a engrenagem que torna isso possível.
16 min readFetch API & AJAX
Todo app web moderno se comunica com um servidor. A Fetch API é a maneira padrão de enviar requisições, ler respostas e atualizar a página sem a necessidade de um recarregamento completo.
15 min readTratamento de Erros em JavaScript
Coisas dão errado. Redes caem, inputs surpreendem e APIs mudam. Um bom tratamento de erros evita que essas falhas se tornem interrupções no serviço e usuários irritados.
14 min readGit & Version Control
Git
Git é o sistema de controle de versão mais popular do mundo. Saiba o que ele é, como funciona e como começar a usá-lo para rastrear alterações e colaborar com outras pessoas.
18 min readGitHub
O GitHub é onde o mundo constrói software. Saiba o que ele é, como funciona e como utilizá-lo para colaborar, hospedar código e impulsionar sua carreira de desenvolvedor.
16 min readTypeScript
TypeScript
O TypeScript adiciona tipos estáticos ao JavaScript, capturando bugs antes que eles cheguem à produção. Veja o que é, como funciona e como começar a usá-lo hoje.
20 min readTipos Avançados de TypeScript
Utility types, conditional types e mapped types permitem transformar e compor tipos com precisão. Veja como eles funcionam e quando utilizá-los.
16 min readJavaScript Frameworks
React
React é a biblioteca de componentes que tornou a UI declarativa popular. Descreva como a tela deve ser para um determinado estado e deixe o React resolver como atualizá-la.
16 min readVue
Vue é o framework progressivo: adote tanto ou tão pouco quanto precisar, com uma sintaxe de template que parece HTML e uma reatividade que simplesmente funciona.
15 min readAngular
Angular é o framework 'batteries-included': focado em TypeScript, com injeção de dependência nativa e uma estrutura opinativa que escala de um pequeno app até uma base de código empresarial robusta.
16 min readSvelte
Svelte é um compilador, não um runtime. Ele transforma seus componentes em código DOM eficiente no momento do build, para que o navegador envie menos JavaScript e execute menos trabalho.
14 min readSolidJS
O SolidJS se parece com o React, mas se comporta como um sistema reativo de grão fino. Os componentes são executados apenas uma vez, e as atualizações vão direto para os nós do DOM que dependem de um signal.
13 min readPreact
Preact é uma alternativa de 3kB ao React com a mesma API moderna. Mesmos componentes, mesmos hooks, uma fração do tamanho — ideal para quando cada kilobyte conta.
12 min readState Management
React Context API
A Context API é a forma nativa do React de compartilhar estado através de uma árvore de componentes sem a necessidade de passar props por todos os níveis. Quando bem utilizada, ela elimina o prop drilling; quando usada descuidadamente, ela provoca a renderização de tudo.
13 min readRedux Toolkit
Redux Toolkit é a maneira moderna e oficial de escrever Redux. Ele remove o boilerplate, inclui Immer para atualizações imutáveis e já vem com devtools, middleware e RTK Query.
15 min readZustand
Zustand é um store de estado pequeno, rápido e sem opiniões para React. Sem providers, sem boilerplate e com assinaturas baseadas em seletores que mantêm as re-renderizações ao mínimo.
13 min readMobX
MobX é um gerenciamento de estado reativo: anote seus dados e tudo o que depende deles será atualizado automaticamente. Sem selectors, sem reducers, apenas observables.
13 min readTanStack Query
TanStack Query é a camada de busca de dados que faltava para React. Ele transforma dados do servidor em um cache, gerenciando carregamento, erros, refetching e invalidação para você.
14 min readPinia
Pinia é a store oficial do Vue: simples, type-safe e construída sobre a Composition API. State, getters e actions em um só lugar, sem providers ou boilerplate.
12 min readMeta-frameworks
Next.js
Next.js é o framework React que adiciona roteamento, renderização no servidor, busca de dados e um runtime de servidor, permitindo que você construa uma aplicação completa em vez de apenas montá-la.
16 min readNuxt
Nuxt é o framework Vue que adiciona roteamento baseado em arquivos, auto-imports, renderização no servidor e um motor de servidor integrado, transformando um app Vue em um projeto full-stack.
14 min readSvelteKit
SvelteKit é o framework de aplicação oficial do Svelte. Ele adiciona roteamento baseado em arquivos, funções de load no lado do servidor, form actions e adapters que permitem deploy em qualquer lugar.
14 min readAstro
Astro é o framework focado em conteúdo que entrega zero JavaScript por padrão. Construa páginas como HTML e adicione interatividade apenas onde for necessário, com qualquer biblioteca de UI.
14 min readRemix
Remix é o framework React focado primeiro em padrões web. Ele se apoia em HTTP, formulários e progressive enhancement para que seu app funcione antes mesmo do JavaScript chegar.
13 min readTesting
Vitest
Vitest é o test runner rápido e nativo do Vite. Ele reutiliza sua configuração de build, executa testes em paralelo e oferece APIs compatíveis com Jest com suporte de primeira classe para TypeScript.
13 min readJest
Jest é o executor de testes clássico do JavaScript: completo, com suporte a snapshots e ainda o padrão em inúmeras bases de código Node.js e React.
13 min readTesting Library
O Testing Library ajuda você a testar componentes da maneira que um usuário os experimenta. Faça consultas por role e texto, interaja com eventos reais e pare de testar detalhes de implementação.
13 min readPlaywright
Playwright é uma ferramenta de testes end-to-end cross-browser com auto-waiting, locators poderosos e ferramentas para tracing, codegen e comparações visuais — tudo em um único pacote.
14 min readCypress
O Cypress executa testes dentro do navegador com um runner interativo, retentativas automáticas e um depurador de 'viagem no tempo' que torna os testes end-to-end excepcionalmente acessíveis.
13 min readStorybook
Storybook é um workshop para componentes de UI. Construa e teste-os isoladamente, documente cada estado e detecte regressões visuais e de acessibilidade antes que cheguem aos usuários.
12 min readBuild Tools & Tooling
Vite
Vite é a ferramenta de build moderna que serve seu código fonte via ES modules nativos em desenvolvimento e o empacota com Rollup para produção. Rápido para iniciar, rápido para iterar.
14 min readnpm
npm é o gerenciador de pacotes padrão e o maior registro de software do mundo. Aprenda como ele instala dependências, resolve versões e executa os scripts do seu projeto.
13 min readpnpm
pnpm é um gerenciador de pacotes rápido e eficiente em disco que utiliza um store endereçável por conteúdo e node_modules estritos via symlinks. É a escolha ideal para monorepos.
13 min readESLint
ESLint é o linter plugável que detecta bugs e impõe convenções antes que cheguem à revisão. Com flat config e suporte a TypeScript, ele se adapta a qualquer stack moderna.
13 min readPrettier
Prettier é o formatador de código opinativo que encerra debates sobre estilo. Ele analisa seu código e o reimprime de forma consistente, para que ninguém discuta sobre espaçamento, aspas ou pontos e vírgulas.
12 min readWebpack
Webpack é o module bundler testado em batalha. Ele transforma um grafo de módulos, assets e dependências em bundles otimizados — e entendê-lo torna qualquer outra ferramenta de build mais clara.
14 min readTurborepo
Turborepo é um sistema de build de alta performance para monorepos de JavaScript. Ele executa tarefas entre pacotes, armazena os resultados em cache e ignora qualquer coisa que não tenha sido alterada.
13 min readNext Steps
Web Performance
Performance é uma funcionalidade. Core Web Vitals, lazy loading, bundles menores e cache inteligente decidem se os usuários ficam ou saem antes mesmo de sua página renderizar.
15 min readSegurança Web
Segurança não é um recurso que você adiciona ao final. XSS, CSRF, CORS e autenticação segura são a base que todo desenvolvedor web precisa entender.
15 min readPWA & Service Workers
Um Progressive Web App é instalado como um app nativo, funciona offline e carrega instantaneamente em visitas recorrentes. Service workers e um web manifest tornam isso possível.
14 min readGraphQL
O GraphQL permite que os clientes solicitem exatamente os dados de que precisam em uma única requisição. Um schema tipado descreve a API, e resolvers buscam os dados por trás dela.
14 min readGSAP
GSAP é a biblioteca de animação por trás de experiências web polidas e orientadas ao scroll. Timelines, easing e ScrollTrigger oferecem controle preciso de cada frame sem a necessidade de brigar com o CSS.
13 min readThree.js
O Three.js torna o WebGL acessível: um scene graph, câmeras, materiais e luzes permitem que você crie experiências 3D para o navegador em JavaScript puro.
14 min readDocker & Deployment
O Docker empacota sua aplicação e seu ambiente em uma imagem que roda da mesma forma em qualquer lugar. Multi-stage builds, caching e CI/CD transformam o deployment em uma etapa repetível.
14 min readInternet & Networking
TCP/IP & Sockets
TCP/IP é a camada de transporte por trás de cada requisição HTTP, conexão de banco de dados e WebSocket. Sockets são a forma como seu código se comunica diretamente com ela.
14 min readWebSockets
WebSockets mantêm uma conexão aberta em ambas as direções, permitindo que o servidor envie dados no momento em que eles mudam, em vez de esperar por uma solicitação.
14 min readNode.js Fundamentals
Fundamentos de Node.js
Node.js executa JavaScript fora do navegador, no servidor. Seu I/O não bloqueante e seu ecossistema vasto o tornam a escolha natural para APIs, ferramentas e apps full-stack.
15 min readNode.js Event Loop
O Node executa seu JavaScript em uma única thread, mas consegue lidar com milhares de conexões. O event loop e suas fases são o motivo disso funcionar — e por que bloqueá-lo é prejudicial.
15 min readNode.js Streams
Streams processam dados em pedaços (chunks) em vez de carregar tudo na memória. É assim que o Node copia arquivos, compacta payloads e transmite corpos HTTP de forma eficiente.
15 min readNode.js File System
O módulo fs lê, escreve e monitora arquivos. Use a API de promises, manipule caminhos com segurança e utilize streams para qualquer conteúdo volumoso.
14 min readAPI Design
REST APIs
REST é um estilo para projetar APIs HTTP baseadas em recursos. Acertando nos substantivos, métodos e códigos de status, sua API parecerá óbvia para qualquer cliente.
15 min readOpenAPI
OpenAPI é uma descrição de uma API HTTP legível por máquina. Uma única especificação pode gerar documentação, clientes, servidores e testes — desde que você a mantenha atualizada.
14 min readVersionamento de API
APIs mudam. O versionamento é a forma de entregar melhorias sem quebrar os clientes que já dependem de você — e como aposentar versões antigas de forma planejada.
13 min readRate Limiting
O rate limiting protege uma API contra abusos, bugs e clientes descontrolados. Alguns algoritmos e headers claros mantêm seu serviço disponível para todos.
14 min readWeb Frameworks
Express
Express é o framework web minimalista e não opinativo para Node.js. Uma rota, uma função e uma cadeia de middleware — esse é todo o modelo mental, e ele ainda sustenta uma enorme fatia da web.
16 min readFastify
Fastify é um framework web para Node.js rápido e focado em schemas. O JSON Schema compila sua validação e serialização, enquanto plugins encapsulados mantêm a integridade de serviços de grande porte.
15 min readNestJS
NestJS é um framework Node.js opinativo e inspirado no Angular. Módulos, controllers e providers oferecem a grandes equipes uma arquitetura compartilhada e injeção de dependência nativamente.
16 min readHono
Hono é um framework web ultrafast construído sobre os objetos padrão Request e Response. Escreva uma vez, execute no Cloudflare Workers, Deno, Bun ou Node, com tipos end-to-end através de RPC.
14 min readKoa
Koa é a reescrita minimalista em async/await do Express, feita por seus autores originais. Um objeto de contexto e uma cebola de middleware — todo o resto é um pacote que você escolhe.
14 min readLaravel
Laravel é o framework PHP construído para a felicidade do desenvolvedor: roteamento expressivo, o Eloquent ORM, templates Blade e um ecossistema que cobre tudo, desde autenticação até o deploy.
16 min readSymfony
O Symfony é tanto um conjunto de componentes PHP reutilizáveis quanto um framework completo construído a partir deles. Ele prioriza estrutura, estabilidade e manutenibilidade de longo prazo em escala em vez de conveniência imediata.
15 min readDjango
Django é o framework web de Python com a filosofia "batteries-included". Modelos, migrações, um ORM, templates, autenticação e um admin de produção já vêm integrados, permitindo que você descreva seus dados enquanto o Django cuida do resto.
16 min readFlask
Flask é o micro-framework minimalista para Python. Você tem roteamento, um objeto de requisição e templates Jinja em um único arquivo, podendo adicionar exatamente as extensões necessárias conforme o app cresce.
14 min readFastAPI
FastAPI é o framework async de Python construído sobre type hints. O Pydantic valida seus dados, o Starlette gerencia o HTTP e a documentação OpenAPI é gerada automaticamente.
15 min readRuby on Rails
Rails é o framework full-stack de Ruby construído sobre a filosofia de convenção sobre configuração. Ele decide as partes tediosas — nomes de arquivos, nomes de tabelas, rotas — para que você possa dedicar seu tempo ao produto.
15 min readSpring Boot
Spring Boot é a camada opinativa sobre o Spring Framework que transforma um monte de configurações em uma aplicação em execução: starters, auto-configuração e um servidor embarcado.
16 min readDatabases
SQL
SQL é a linguagem declarativa para fazer perguntas a dados relacionais. Você descreve o resultado desejado e o banco de dados decide como computá-lo.
14 min readPostgreSQL
PostgreSQL é o banco de dados relacional que leva a correção a sério. Tipagem forte, transações reais, JSONB e um sistema de extensões fazem dele a escolha padrão para novas aplicações.
16 min readMySQL
MySQL é o banco de dados relacional por trás de uma enorme parcela da web. O InnoDB oferece transações reais, a replicação facilita a escala de leituras e seu ecossistema é colossal.
15 min readMongoDB
MongoDB é um banco de dados de documentos: documentos BSON flexíveis vivem em coleções, são consultados com uma linguagem similar ao JavaScript e escalam horizontalmente com replica sets e sharding.
15 min readRedis
Redis é um servidor de estruturas de dados em memória: chaves mapeiam para strings, hashes, lists, sets, sorted sets e streams, servidos da RAM por um loop de comandos single-threaded.
14 min readORMs & Query Builders
Prisma
Prisma é um ORM schema-first para TypeScript. Descreva seus modelos no schema.prisma, gere um cliente totalmente tipado e utilize migrations para manter o banco de dados sincronizado.
15 min readDrizzle ORM
Drizzle é um ORM focado em TypeScript que mantém o SQL evidente. Defina tabelas em TypeScript, componha queries que espelham o SQL que elas geram e execute tudo em um runtime leve e compatível com edge.
14 min readTypeORM
O TypeORM mapeia classes TypeScript para tabelas de banco de dados usando decorators. Ele suporta os padrões Data Mapper e Active Record, e entrega repositórios, um QueryBuilder e migrações em um único pacote.
15 min readKnex.js
Knex.js é um query builder de SQL, não um ORM completo. Ele compõe queries como JavaScript, vincula cada valor de forma segura, suporta diversos dialetos e oferece migrações e seeds junto com as queries.
14 min readAuthentication & Authorization
Password Hashing
Senhas são o único segredo que você nunca deve armazenar. Um hash lento e com salt transforma um banco de dados roubado em um monte de tentativas que nunca terminam.
14 min readJWT
Um JSON Web Token é uma string assinada e segura para URL que carrega claims sobre um usuário. Compacto e autocontido, ele escala perfeitamente, mas é fácil de implementar incorretamente.
15 min readOAuth 2.0
OAuth 2.0 é um framework para autorização delegada, não para autenticação. Ele permite que um usuário conceda a um app acesso limitado aos seus dados sem compartilhar a senha.
16 min readOpenID Connect
OAuth 2.0 autoriza o acesso; OpenID Connect adiciona a camada de identidade que permite autenticar usuários. É o protocolo por trás do botão 'Entrar com...'.
15 min readAutenticação por Sessão
A autenticação por sessão mantém a verdade no servidor. Um ID de sessão aleatório viaja em um cookie HttpOnly, enquanto a identidade e as permissões do usuário residem em um store que você controla e pode revogar a qualquer momento.
14 min readRBAC
O RBAC responde a uma pergunta por requisição: este principal tem permissão para fazer isso neste recurso? As roles agrupam permissões, e uma única verificação can() mantém a resposta consistente em todo o sistema.
15 min readAPI Keys
Uma API key é uma credencial de longa duração para máquinas. Emita-a apenas uma vez, armazene apenas o hash, defina escopos restritos e crie um mecanismo para rotacioná-la e revogá-la antes que isso se torne necessário.
14 min readTesting
Supertest
O Supertest executa sua aplicação Node HTTP no mesmo processo e transforma testes de API em asserções simples de status, headers e corpo — sem servidor para iniciar, sem porta para gerenciar e sem rede para mockar.
14 min readTestes End-to-End
Testes end-to-end operam o sistema real da mesma forma que um usuário faria. Eles são lentos, poucos e insubstituíveis: os únicos testes capazes de provar que uma pessoa consegue realmente concluir uma tarefa.
15 min readCaching & Performance
Estratégias de Caching
Caching é como os sistemas permanecem rápidos sob carga. Os padrões são simples; a parte difícil é saber o que manter, por quanto tempo e quando descartar.
15 min readPaginação
Todo endpoint de coleção precisa de um limite. A paginação transforma uma consulta ilimitada em algo previsível, e a escolha entre offset e cursor decide se ela continuará rápida.
14 min readProcessamento em Lote
O processamento em lote (batch processing) move tarefas lentas e passíveis de reexecução para fora do caminho da requisição e as envia para workers. A fila intermediária é o que torna o sistema resiliente, observável e seguro para rodar em escala.
15 min readConnection Pooling
Abrir uma conexão com o banco de dados é caro. Um pool mantém um pequeno conjunto de conexões abertas e as reutiliza, transformando um custo por requisição em uma configuração única e protegendo o banco de dados de tempestades de conexões.
14 min readMessage Queues & Real-time
Filas com Redis
Uma fila de jobs com Redis coloca tarefas lentas e repetíveis atrás de um buffer durável. O BullMQ transforma listas e streams do Redis em jobs atrasados, tentativas de reexecução, prioridades e agendamentos repetíveis.
14 min readRabbitMQ
RabbitMQ é um message broker AMQP que roteia mensagens através de exchanges para filas. Acknowledgements, prefetch e dead-lettering tornam-no uma ferramenta precisa para trabalhos que não podem ser perdidos.
15 min readApache Kafka
Kafka é um commit log distribuído e append-only, não uma fila. Os registros são gravados uma vez e lidos várias vezes, o que lhe confere garantias de replay, fan-out e ordenação que um broker clássico não consegue igualar.
15 min readSocket.IO
Socket.IO é um framework de eventos em tempo real construído sobre WebSockets. Ele adiciona salas, confirmações (acknowledgements), reconexão automática e um fallback de polling, para que você foque nas funcionalidades em vez da infraestrutura de conexão.
14 min readDevOps & Deployment
Pipelines de CI/CD
CI/CD transforma cada alteração em um artefato imutável e testado, e entrega esse mesmo artefato da mesma maneira todas as vezes. Um pipeline é apenas uma sequência de jobs que é executada sempre que o código se move.
15 min readLinux
O Linux move a vasta maioria dos servidores, containers e máquinas na nuvem. Os poucos conceitos fundamentais por trás dele — tudo é um arquivo, processos são baratos, permissões são explícitas — desbloqueiam qualquer máquina em que você fará SSH.
15 min readNginx
Nginx é o servidor web orientado a eventos que fica à frente de quase toda aplicação Node, Python e Go em produção. Ele termina o TLS, serve arquivos estáticos, balanceia a carga e protege seu processo da internet.
15 min readPlataformas de Nuvem
O deploy na nuvem é a arte de escolher quanta infraestrutura você deseja gerenciar. De um VPS bruto a um PaaS gerenciado ou Kubernetes, a troca é a mesma: controle e custo contra o tempo que você gasta mantendo tudo funcionando.
14 min readArchitecture & Patterns
Microservices
Microservices dividem uma aplicação em serviços implantáveis independentemente em torno de capacidades de negócio. O objetivo é a autonomia da equipe e lançamentos independentes, não o escalonamento por si só — e a rede entre eles é o preço a pagar.
16 min readMonólito Modular
Um monólito modular é um sistema com implantação única e fronteiras internas rígidas. Você mantém chamadas em processo, uma única transação e um único pipeline, enquanto cada módulo de negócio detém seus próprios dados e expõe uma interface pública reduzida — permitindo que ele se torne um serviço futuramente, se necessário.
14 min readArquitetura Orientada a Eventos
A arquitetura orientada a eventos substitui chamadas diretas por fatos. Um serviço registra que algo aconteceu e segue em frente, enquanto outros serviços reagem no seu próprio tempo. O acoplamento diminui — e a certeza também.
15 min readClean Architecture
Clean Architecture é uma regra com grandes consequências: as dependências apontam para dentro. O domínio não sabe nada sobre o banco de dados, o framework ou HTTP, permitindo que as regras de negócio sejam testadas e alteradas sem arrastar a infraestrutura junto.
14 min read