Ferramentas do usuário

Ferramentas do site


solid:srp

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Ambos lados da revisão anterior Revisão anterior
Próxima revisão
Revisão anterior
solid:srp [2015/07/18 18:28]
morvanabonin [Principio da Responsabilidade Única]
solid:srp [2024/07/31 00:47] (atual)
Linha 5: Linha 5:
 //A classe deve ter um, e somente um, motivo para mudar.// //A classe deve ter um, e somente um, motivo para mudar.//
  
-No contexto do Principio da Responsabilidade Única (SRP), é definido que a responsabilidade de uma classe é definida como uma razão para a mudança. Se uma classe tem mais de uma razão para mudar, então ela tem mais de uma responsabilidade. +No contexto do Principio da Responsabilidade Única (SRP), é dito que a responsabilidade de uma classe é definida como uma razão para a mudança. Se uma classe tem mais de uma razão para mudar, então ela tem mais de uma responsabilidade. 
  
-Uma classe que possui uma única responsabilidade também é considerada uma classe coesa, ou seja, ela não toma conta de mais de um conceito do sistema.+Uma classe que possui uma única responsabilidade também é considerada uma classe coesa, ou seja, ela não toma conta de mais de um conceito do sistema, além do que, essa responsabilidade deve ser totalmente encapsulado pela classe, caso contrário os pontos de alterações ficarão implícitos e o desenvolvedor precisará buscá-los manualmente e é óbvio que algum vai ser deixado para trás.
  
-Classes coesas são mais simples de serem mantidas, possuem menos código e seu reúso é maior. +Trabalhar com classes coesas significa ter mais simplicidade em mantê-las, além do que, possuem menos código e seu reúso é maior.
  
  **Toda classe que não é coesa não para de crescer nunca.**  **Toda classe que não é coesa não para de crescer nunca.**
  
-Nem sempre é fácil enxergar a responsabilidade de uma classe. Talvez essa seja a maior dúvida na hora de se pensar em códigos coesos. É fácil entender que uma classe deve ter apenas uma responsabilidade. O difícil é definir o que é uma responsabilidade, afinal é algo totalmente subjetivo. **Por isso, geralmente, colocamos mais código do que deveríamos nela. Dois comportamentos "pertencem" ao mesmo conceito/ responsabilidade se ambos mudam juntos.** +Enfim, nem sempre é fácil enxergar a responsabilidade de uma classe. Talvez essa seja a maior dúvida na hora de se pensar em códigos coesos. É fácil entender que uma classe deve ter apenas uma responsabilidade. O difícil é definir o que é uma responsabilidade, afinal é algo totalmente subjetivo. **Por isso, geralmente, colocamos mais código do que deveríamos nela. Dois comportamentos "pertencem" ao mesmo conceito/ responsabilidade se ambos mudam juntos.**
  
  
 +//Fontes de pesquisas//\\
 +[[http://www.casadocodigo.com.br/products/livro-oo-solid|Orientação a Objetos e SOLID para Ninjas]]\\
 +[[http://www.amazon.com/Software-Development-Principles-Patterns-Practices/dp/0135974445|Agile Software Development, Principles, Patterns, and Practices]]\\
 +[[https://en.wikipedia.org/wiki/Single_responsibility_principle|Single responsibility principle]]
solid/srp.1437244098.txt.gz · Última modificação: 2024/07/31 00:47 (edição externa)