[OO] Principios SOLID

Engenharia de Software

23/05/2017

boa tarde people

A comunidade do fórum: alguém poderia elucidar please os principios SOLID? :)
abracos
Gladstone Matos

Gladstone Matos

Curtidas 0

Melhor post

Fernando Gaspar

Fernando Gaspar

26/05/2017

Fala Gladstone, beleza?

O SOLID é um conjunto de principio ligado as boas praticas do desenvolvimento de software em orientação a objetos, quando esse conceito é aplicados em conjunto você terá um software de maior qualidade, pois será mais simples de realizar novas implementações ou de realizar manutenções, tornando todo o seu desenvolvimento mais ágil com maior facilidade adaptações.

O termo SOLID é um acrônimo para:

S - Single-responsiblity principle

Uma classe deve ter apenas uma única responsabilidade, você não deve 'pendurar' diversas funcionalidades. Cada classe precisar ter o seu papel bem definido.

O - Open-closed principle

Deve ser possível a extensão de uma classe, mas a mesma não deve poder ser alterada, ou seja é possível adicionar recursos, entretendo não é correto remover ou alterar recursos já existentes.

L - Liskov substitution principle

Principio de substituição, classes filhas devem poder ser substituídas por sua classe pai, ao garantir que as classes filhas sejam completamente substituíveis por sua classe pai, todo código que utilizar a classe pai será capaz de atender o OCP, facilitando a manutenção e extensão do software.


I - Interface segregation principle

Criação de interfaces específicas, não deve se definir uma interface com diversos recursos, pois ao informar para uma classe que ela deve ter uma determinada interface, elá terá que importar métodos que talvez não iram ser utilizados é um pouco similar ao SRP porem com interfaces.


D - Dependency Inversion Principle

As classes devem depender de abstrações e não de concreções. Ele afirma que o módulo de alto nível não deve depender do módulo de baixo nível, mas eles devem depender de abstrações.


Se quiser saber mais sobre esse tema detalhadamente, te recomendo esse DevCast:
https://www.devmedia.com.br/solid-melhorando-a-qualidade-dos-seus-projetos-orientados-a-objetos/27802

Espero ter ajudado, forte abraço!
GOSTEI 2

Mais Respostas

Gladstone Matos

Gladstone Matos

23/05/2017

wow mygod MUITO obrigado pelo apoio Gaspar! Bom dia abraços
GOSTEI 0
POSTAR