-
Notifications
You must be signed in to change notification settings - Fork 21
SOLID
-
Alta coesão: É fator de qualidade de projeto e representa que cada classe tem sua respectiva responsabilidade bem definida
-
Baixo acoplamento: é fator de qualidade em um projeto que busca a medida de interdependência entre modulos, modulos com baixo acoplamento são mais independentes.
-
Single responsability principle: Cada classe/metodo devem ter responsabilidades únicas, logo uma classe Conta não é responsavel por fazer transferencias, ela deve designar essa responsabilidade a classe de fazer transferencias, tornando as classe mais coesas.
-
Open-closed principle: Uma classe deve ser aberta a extensão (herança) e fechadas a modificações, é basicamente deixar sua classe ser extensivel, por exemplo, crio a classe Carro e crio várias outras classe que herdam de carro para extender essa classe, por exemplo, CarroSedan, CarroPopular, CarroQuebrado, CarroFeio, e etc... cada um responsavel por suas modificações.
-
Liskov substitution principle: O cliente deve usar o serviço da classe abstrata (geral) sem saber que ta usando um serviço especifico concreto, por exemplo temos a classe Carro abstrata e as classes concretas Gol e Palio que herdam dessa abstrata, o cliente pode usar o Carro sem saber se o carro é um Gol ou um Palio, isso é mais usado em linguagens com tipagem estática que não é o caso do python.
-
Interface segregation principle: Uma interface não deve obrigar quem a implementar a implementar métodos que não agrega valor a ela, por exemplo, a classe Mamifero tem os métodos que deve ser implementado por Pessoa e Cachorro que são mamiferos, andar e falar, porém cachorro não fala, logo ele não deve ser obrigado a implementar esse método, ele deve criar seu método latir
-
Dependency Inversion Principle: Uma classe deve depender de classes abstratas/interface e não de suas classes concretas que ta a implementação, é basicamente igual ao Liskov substitution, porém voltado a dependencia uma frabrica de carros deve depender da classe abstrata Carro e não das concretas Gol ou Palio.
- Folha de estilo - PEP8<\li>
- Product Backlog
-
Release 01
- Sprint01
- Sprint02
- Sprint03
- Sprint04
- Sprint05
Release 02
- Sprint06
- Sprint07
- Sprint08
- Sprint09
- Sprint10
- Sprint11
- Métricas GQM
- Relatório de fechamento do projeto
- Fotos