Creational - Factory Method
Creational - Abstract Factory
SOLID
-O Single Responsibility Principle (Princípio da responsabilidade única)
-O Open-Closed Principle (Princípio aberto/fechado)
-O Liskov Substitution Principle (Princípio da substituição de Liskov)
-O Interface Segregation Principle (Princípio da segregação da interface)
-O Dependency Inversion Principle (Princípio da inversão da dependência)
Como vimos, é muito importante entender o SOLID e a programação orientada a objetos, pois, atualmente, a maioria das linguagens utilizam esse paradigma por conta de todos os benefícios que ele traz.
Single Responsibility Principle
Open-Closed Principle (Princípio Aberto-Fechado)
Liskov Substitution Principle (Princípio da substituição de Liskov)
Esse é o princípio que traz a ideia de herança. Temos uma classe pai, que geralmente possui atributos genéricos e temos uma classe filha, que herda os atributos da classe pai e pode ter outros atributos específicos para si mesma. No nosso exemplo, a classe Aluno poderia herdar todos os atributos da classe Pessoa e ter também ter outros atributos como nota, presença…
Interface Segregation Principle (Princípio da Segregação da Interface)
Com o princípio de segregação de interface, é possível implementar somente o que importa para as nossas classes. Vamos imaginar que tenhamos uma classe AtendenteFarmacia, mas esse cargo é dividido em dois, temos o atendente de caixa e o balconista e eles executam funções diferentes, logo, teríamos as classes AtendenteCaixa e Balconista.
Para evitar isso, basta criar uma interface que atenda separadamente as funções de cada atendente.
Dependency Inversion Principle (Princípio da inversão da dependência)