Princípio da Responsabilidade Única

Angelo Ribeiro
2 min readSep 9, 2018

--

https://team-coder.com/solid-principles/

O Princípio da Responsabilidade Única ou em inglês Single Responsibility Principle (SRP), é um dos princípios SOLID e, define que “uma classe deve ter apenas um motivo para mudar”. Isso significa que uma classe não pode ter mais de uma responsabilidade.

Um exemplo de violação do SRP:

No exemplo acima, a classe Produto tem duas responsabilidades, a primeira representar um produto (imaginando que é uma classe de persistência) e a segunda calcular o ICMS. Não é de responsabilidade da classe Produto calcular impostos, essa responsabilidade deve estar em outra classe. Se um novo imposto surgir, deveremos alterar a classe Produto para adicionar uma nova regra, violando assim o SRP. Para resolver esse problema, podemos criar uma segunda classe chamada CalcularImpostos e atribuir a mesma a responsabilidade de calcular impostos que serão adicionados ao preço do produto.

Cada classe tem sua responsabilidade bem definida. Se uma classe tem mais de uma responsabilidade ou um motivo para ser alterada, ela ela esta ferindo o princípio SRP. No primeiro momento, pode parecer trabalhoso separar as classes por responsabilidades, mas utilizando esse princípio garantimos a qualidade do código e o respeito as bases da orientação à objetos. Nossas classes serão mais coesas e o entendimento do nosso código será mais fácil.

Aplica SRP e os demais princípios SOLID garante uma arquitetura madura e código limpo.

Até mais!

--

--