· SRP - Single Responsibility Principle: princípio da responsabilidade única;
· OCP - Open Closed Principle: princípio do aberto/fechado;
· LSP - Liskov Substitution Principle: princípio da substituição de Liskov;
· ISP - Interface Segregation Principle: princípio da segregação de Interfaces;
· DIP - Dependency Inversion Principle: princípio da inversão de dependência.
SRP-Principio da Responsabilidade Única - Uma classe deve ter um, e somente um, motivo para mudar.
OCP-Princípio Aberto-Fechado - Você deve ser capaz de estender um comportamento de uma classe, sem modificá-lo.
LSP-Princípio da Substituição de Liskov - As classes derivadas devem ser substituíveis por suas classes base.
ISP-Princípio da Segregação da Interface - Muitas interfaces específicas são melhores do que uma interface única.
DIP-Princípio da inversão da dependência - Dependa de uma abstração e não de uma implementação.