solid

Princípios SOLID de Design de Software

O SOLID é um acrônimo para cinco princípios de design de software orientado a objetos, cruciais para a estruturação do ecossistema Concentrador, garantindo flexibilidade e facilidade de manutenção.


1. SRP - Single Responsibility Principle

Cada classe ou módulo possui uma, e apenas uma, razão para mudar. Isso impede a criação de objetos gigantes (“God Objects”) e mantém o código altamente coeso.


2. OCP - Open/Closed Principle

Nossos módulos são abertos para extensão, mas fechados para modificação. Isso significa que podemos adicionar novos recursos (como um novo formato de exportação de edital) sem mexer no código que já está funcionando e validado em produção.


3. LSP - Liskov Substitution Principle

Subclasses devem ser substituíveis por suas superclasses sem quebrar o comportamento do sistema. Garante consistência em heranças.


4. ISP - Interface Segregation Principle

Nossos componentes não devem ser forçados a depender de interfaces que não utilizam. Criamos interfaces pequenas e específicas.


5. DIP - Dependency Inversion Principle

Dependemos de abstrações (interfaces), não de implementações concretas. Isso permite que mudemos o banco de dados ou provedor de e-mail alterando apenas a infraestrutura, sem impactar o domínio central da aplicação.