Solid é a junção de cinco princípios básicos para a programação orientada a objetos. A intenção de todos estes é manter o seu código mais leaível, extensível, manuteníbel, flexível entre outras qualidades como ser facilimente refatorável. Esta junção foi primeiramente citada por C. Martin, também conhecido como Uncle Bob.
Princípio da responsabilidade única.
Uma clase deve possuir apenas um motivo para ser alterada. Isso indica que uma classe deve ter apenas uma responsabilidade dentro do sistema. Exemplo: Pulmões não devem bombear sangue.