Single Responsability      Principle    Marcelo Nascimento      Thiago Funghi      Thiago Ribeiro
SRP - Nada de Classes Jack Bauer...                               Sabemos que OO sugere                               reus...
SRP - Apenas uma razão para mudar...Nunca deve existir mais de uma razão para uma classe mudar Muitas Razões Para Mudar = ...
SRP - Ou seja...    Cada Classe deve fazer SÓ o SEU trabalho Sujo
SRP - Dicas                          1. Identifique as responsabilidades da                             classe            ...
SRP - Na Prática                                     Métodos: Area() - Calcula a área do Retângulo usando um modelo matemá...
SRP - Na Prática        Separando as responsabilidades
SRP - Conclusões1.  Se uma classe possuir mais de uma responsabilidade, deve-se considerar sua decomposição em duas ou mai...
SRP - DÚVIDAS?
Próximos SlideShares
Carregando em…5
×

Apresentação - Single responsability principle

129 visualizações

Publicada em

0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
129
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
4
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Apresentação - Single responsability principle

  1. 1. Single Responsability Principle Marcelo Nascimento Thiago Funghi Thiago Ribeiro
  2. 2. SRP - Nada de Classes Jack Bauer... Sabemos que OO sugere reuso, extensibilidade e manutenabilidade.Mas isso é impossível quandotemos Classes realizando ummilhão de tarefas...
  3. 3. SRP - Apenas uma razão para mudar...Nunca deve existir mais de uma razão para uma classe mudar Muitas Razões Para Mudar = Muitas Razões Para Ter Erros
  4. 4. SRP - Ou seja... Cada Classe deve fazer SÓ o SEU trabalho Sujo
  5. 5. SRP - Dicas 1. Identifique as responsabilidades da classe 2. Extraia métodos para isolar as responsabilidades 3. Extraia uma classe para isolar métodos que devem permanecer juntos 4. Se as camadas superiores podem fornecer informações, faça, não carregue tudo na classe “canivete suíço” 5. Se vários métodos compartilham parâmetros, promova-os a variáveis de instância
  6. 6. SRP - Na Prática Métodos: Area() - Calcula a área do Retângulo usando um modelo matemático; Desenhar() - Desenha o Retângulo usando uma interface gráfica; DUAS RESPONSABILIDADES!!!qualquer mudança no modelo matemático pode impactar na interface gráfica e vice-versa..
  7. 7. SRP - Na Prática Separando as responsabilidades
  8. 8. SRP - Conclusões1.  Se uma classe possuir mais de uma responsabilidade, deve-se considerar sua decomposição em duas ou mais classes; 2.  Baseado no princípio da coesão funcional, uma classe deve ter uma única responsabilidade; 3.  Cada responsabilidade é um eixo de mudança e as fontes de mudança devem ser isoladas;Este princípio é um dos mais simples de entender, mas muito difícil de ser colocado em prática.... É natural agrupar responsabilidades...(Object Mentor)
  9. 9. SRP - DÚVIDAS?

×