SOLID Principles
-
Upload
ismael -
Category
Technology
-
view
824 -
download
1
description
Transcript of SOLID Principles
SOLID são princípios básicos (boas práticas) da Programação Orientada a Objeto
domingo, 9 de setembro de 12
SOLID
ingle responsibility Principle
pen/Closed
iskov Substitution Principle
nterface Segregation
ependency Inversion Principle
domingo, 9 de setembro de 12
Uma Classe deve possuir apenas um motivo para ser alterada, ou seja, possuir apenas uma responsabilidade.
Principle
domingo, 9 de setembro de 12
Devemos separar as funcionalidades em classes distintas.
public class GeradorDeNotaFiscalDeFrete {}
public class AjustadorDeContadorDeNumeracaoDeNotaFiscal {}
public class ConsultaDeNotaFiscalService {}
...
domingo, 9 de setembro de 12
Porque quando você fizer uma alteração, vai procurar a classe responsável.
domingo, 9 de setembro de 12
Uma classe deve estar aberta para extensão, mas fechada para alteração
Principle
domingo, 9 de setembro de 12
"Se você pode invocar um método q() de uma classe T (base), deve poder também invocar o método q() de uma classe T'(derivada) que é derivada com herança de T (base)."
Principle
domingo, 9 de setembro de 12
Deve ser possível substituir uma classe base por uma classe derivada em qualquer ponto do código
domingo, 9 de setembro de 12
É melhor ter muitas interfaces específicasdo que ter uma interface genérica.
Principle
domingo, 9 de setembro de 12
Principle
Módulos de alto nível não devem depender de módulos de baixo nível, devem depender de abstrações.
domingo, 9 de setembro de 12
Abstrações não devem depender de detalhes, detalhes devem depender de abstrações.
domingo, 9 de setembro de 12
Referenceshttp://www.slideshare.net/fullscreen/andrefaria/solid-princpio-da-responsabilidade-nica/1
http://viniciusquaiato.com/blog/srp-single-responsibility-principle/
http://en.wikipedia.org/wiki/Single_responsibility_principle
http://www.macoratti.net/11/05/oop_opc1.htm
http://www.javacodegeeks.com/2011/11/solid-liskov-substitution-principle.html
http://www.oodesign.com/interface-segregation-principle.html
domingo, 9 de setembro de 12