DEV Community

Vitor Luiz Rubio
Vitor Luiz Rubio

Posted on • Originally published at dev.to

SOLID Sucinto

SOLID

S - princípio da responsabilidade única

cada classe só pode ter uma responsabilidade.


O - princípio do “aberto/fechado”

uma classe deve ser fechada a mudanças e aberta a extensão. Isso quer dizer que você deve conseguir modificar ou evoluir o comportamento do sistema sem modificar as classes.


L - princípio da substituição de Liskov

um objeto deve poder ser substituído por qualquer um de seus descendentes ou derivados sem comprometer o funcionamento do sistema.


I - princípio da segregação de interfaces

programe orientado à interfaces e não a implementação. Faça classes que te permita fazer manutenção modificando apenas os membros privados sem mexer nos públicos ou na interfaces.


D - injeção de dependência

outros objetos que uma classe ou método precisa devem ser criados fora dela e passados como parâmetro pro construtor, ou por um método, e nunca criado dentro dela, pra evitar acoplamento (cite frameworks que você conheça, como o Simple Injector no C#). Outro conceito relacionado a isso é inversão de responsabilidade (IoC - Inversion of Concenrs em inglês).

Top comments (0)