SOLID | Single Responsability Principle

Single Responsability Principle

Falando sobre SOLID


Fala galera, no post de hoje vamos falar sobre o Single Responsability Principle.


Este é um princípio dos mais fáceis de entender, no entanto não se engane, ele também é um dos mais difíceis de implementar, então se prepare pra deixar seu código ainda mais elegante.
Definição: O princípio da Responsabilidade Única diz que suas classes devem conter apenas um motivo para mudanças, ou seja, apenas uma responsabilidade.


No exemplo abaixo estamos usando a Classe File, esta por sua vez não ABRE tampouco LER o arquivo que recebe. A responsabilidade da Classe File é de apenas manter o estado no arquivo. Ou seja, guarda sua URL.
Na Classe FileReader como o próprio nome sugere ela apenas recebe a instancia de File e implementa um método de leitura do arquivo.
Do mesmo modo temos a Classe FileWriter que recebe a instância da classe File e implementa métodos de escrita no arquivo.


Daí você diz: Nossa quantas classes pra fazer uma coisa tão simples.
Mas quando temos as responsabilidades, de cada classe bem definidas dentro do nosso pacote onde cada uma é responsável por uma dada tarefa temos um baixo acoplamento do nosso código bem como nos ajuda a testar cada classe e temos também com isso fácil manutença e menos dor de cabeça né?!


Nota: lembre-se que Responsabilidade Única NÃO significa que teremos apenas um método dentro de nossa classe, mas sim uma e apenas uma responsabilidade. Pensem nisso como uma tarefa ou promessa que sua classe deve cumprir, se ela tiver mais do que uma tarefa ou fizer mais do que uma promessa então você tem um problema.


Até mais amiguinhos!

#housecursos #php7 #cursosonline #cursos #cursosdeti #cursosdev #dev #programacao #aprendaprogramar #sistemas #programador #tecnologia #cursosonlineti #code #coding #script #aprendendoaprogramar #hacker #escoladeprogramacao #cursosdeprogramacao #comoaprenderaprogramar

Julio Alves
administrator
Julio Alves é desenvolvedor web com mais de 8 anos de experiência, amante de PHP, Javascript, NodeJS, Ionic e ReactNative. Graduado em Sistemas de Informação pela Faculdade Estácio FIC do Ceará. Acredita que para se tornar um bom programador é preciso sobretudo ser esforçado e aberto para aprender todos os dias.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Lançamento Novo Curso de PHP 7
Lançamento Novo Curso de PHP 7