Pílula de
Arquitetura - Princípios SOLID
|
Os princípios SOLID para programação e design orientados a objeto são de
autoria de
Robert C. Martin (mais conhecido como
Uncle Bob) e datam do
início de 2000. |
A palavra
SOLID é um acróstico onde cada letra significa a sigla de um
princípio: SRP, OCP, LSP, ISP e DIP.
Obs: Os acrósticos são formas textuais onde a primeira
letra de cada frase ou verso formam uma palavra ou frase
Na tabela abaixo vemos cada sigla, o seu significado e um resumo do princípio a que
se refere no original e em uma tradução livre.
SRP |
The Single Responsibility Principle
Principio da Responsabilidade Única |
Uma classe deve ter um, e somente um, motivo para mudar.
A class should have one, and only one, reason to change. |
OCP |
The Open Closed Principle
Princípio Aberto-Fechado |
Você deve ser capaz de
estender um
comportamento de uma
classe, sem
modificá-lo.
You should be able to extend a classes behavior, without
modifying it. |
LSP |
The Liskov Substitution Principle
Princípio da Substituição de
Liskov |
As
classes derivadas
devem
poder substituir
suas classes bases.
Derived classes must be substitutable for their base
classes. |
ISP |
The Interface Segregation Principle
Princípio da Segregação da
Interface |
Muitas interfaces específicas são melhores do que uma interface
geral
Make fine grained interfaces that are client specific. |
DIP |
The Dependency Inversion Principle
Princípio da inversão da
dependência |
Dependa de uma abstração e não de uma implementação.
Depend on abstractions, not on concretions. |
Os princípios
SOLID devem ser aplicados no desenvolvimento de software de forma que
o software produzido tenha as seguintes características:
-
Seja fácil de manter, adaptar e se ajustar às constantes mudanças exigidas
pelos clientes;
-
Seja fácil de entender e testar;
-
Seja construído de forma a estar preparado para ser facilmente alterado
com o menor esforço possível;
-
Seja possível de ser reaproveitado;
-
Exista em produção o maior tempo possível;
-
Que atenda realmente as necessidades dos clientes para o qual foi criado;
A utilização dos princípios
SOLID tem o objetivo de evitar :
-
Erros, Falhas e defeitos
-
Estrutura de código ruim
-
Código
insustentável (difícil de manter)
-
Desempenho sofrível
-
Código de difícil compreensão
-
Relação entre falha, erro e defeito
-
Falha -
resultado ou manifestação de um ou mais defeitos.(diferença
indesejável entre o observado e o esperado (defeito encontrado)
- Um
Erro (error) indica que
certas funcionalidades do software não estão se comportando como
especificado;(engano cometido por seres humanos;)
- O
Defeito (failure) é a
manifestação do erro, seja através de uma tela com uma mensagem para o
usuário,etc.(resultado de um erro
encontrado num código ou num documento);
|
Aguarde neste mês de maio artigos sobre os seguintes assuntos:
(Os links já estão ativos)
- OOP
- Herança x Composição
- OOP
- O princípio da substituição de Liskov (LSP)
- OOP
- O princípio Open-Closed (OCP)
-
Padrões
de Projeto - Os 7 princípios básicos do desenvolvimento de software
"E Jesus lhes disse: Eu sou o pão
da vida: aquele que vem a mim não terá fome; e quem crê em mim nunca terá sede."
(João 6:35)
Referências: