SOLID
TL;DR
Galho de Fundamentos sobre os cinco princípios de design orientado a objetos — SRP, OCP, LSP, ISP, DIP — que, aplicados juntos, levam a código flexível, testável e evolutivo. Não são regras religiosas: são heurísticas cujas exceções você deve conhecer. Interview-critical.
Sobre este galho
Spin-off do galho Orientação a Objetos: os cinco princípios de Robert C. Martin (Uncle Bob) rendem fundo o suficiente para terem galho próprio. A meta comum dos cinco é baixo acoplamento e alta coesão — por isso o galho referencia 08 - Acoplamento e coesão (no galho OO), que é seu pré-requisito conceitual.
Fronteiras (linka, não duplica):
- SOLID aplicado à arquitetura (nível módulo/serviço) → Arquitetura de Software. Aqui é o nível objeto/classe.
- Design Patterns → Design Patterns. OCP e DIP usam patterns como exemplo; não ensinamos o catálogo.
Audiência: dev senior em preparação para entrevista internacional. Cada nota tem seção “Em entrevista” com frases prontas em inglês e vocabulário técnico.
Iniciado — o princípio e os dois primeiros
- 01 - O que é SOLID — cinco heurísticas (não dogma), história (Uncle Bob), a meta comum.
- 02 - SRP - Responsabilidade Única — uma única razão para mudar; eixos de mudança.
- 03 - OCP - Aberto-Fechado — aberto para extensão, fechado para modificação; switch vs polimorfismo.
Adepto — os três últimos
- 04 - LSP - Substituição de Liskov — subtipos substituíveis; design by contract; Rectangle/Square.
- 05 - ISP - Segregação de Interfaces — várias interfaces pequenas vs uma grande.
- 06 - DIP - Inversão de Dependência — depender de abstrações; inverter a seta de dependência.
Magus — aplicação e crítica
- 07 - DIP na prática - DI e IoC — injeção de dependência, Inversão de Controle, containers, testabilidade.
- 08 - SOLID em xeque — over-engineering, SOLID vs simplicidade (Ousterhout), SOLID na arquitetura, em entrevista.
Rotas alternativas
Entrevista internacional
01 → 02 → 06 → 07 → 08. O acrônimo, o SRP, a inversão de dependência, DI na prática e a leitura crítica.
Os cinco em ordem
01 → 02 → 03 → 04 → 05 → 06. Um princípio por nota, na ordem do acrônimo.
Todas as notas
TABLE fase, status, updated
FROM "03-Dominios/Fundamentos/SOLID"
WHERE type = "concept"
SORT file.name ASCVeja também
- Fundamentos (MOC do domínio)
- Orientação a Objetos — os pilares e o design OO que SOLID refina
- 08 - Acoplamento e coesão — a meta que os cinco princípios perseguem
- Arquitetura de Software — SOLID no nível de módulo e serviço
- Design Patterns — padrões que materializam OCP e DIP
- Dicionário de Fundamentos