2
respostas

Dificuldades de Comprenção

Explicação ficou muito vaga em determinados momento ele não disse o porque fez aquilo apenas fez (não entendi devido a logica que ele quis fazer e não pelo código escrito)

2 respostas

Olá,

Sugiro que tente assistir novamente o vídeo ou ler o texto de explicação. nele explica o motivo de se usar Bridge:

Veja que com essa solução se quiséssemos implementar uma nova forma de envio de mensagens, precisaríamos apenas de uma nova classe implementando a interface IEnviador, não temos que nos preocupar com os tipos de mensagem que já existem no sistema.

Nessa solução estamos ligando duas hierarquias que possuem responsabilidades distintas através de composição de classes. Essa composição funciona como uma ponte entre as duas hierarquias de classes e, por isso, esse padrão é conhecido como bridge.

Oi!

Em outras palavras, separa Quem faz, de Como faz e cria uma Ponte entre os dois!

Esse Quem faz no caso do vídeo é o Enviador, no mundo real poderia ser uma Secretária por exemplo.

o Como faz é o comportamento da mensagem, sai por SMS ou E-mail.

Você poderia ter uma super classe Enviadora que possui todos os métodos para enviar tanto SMS quanto Email. Mas quando você precisar criar um novo modo de envio, exemplo por Whatsapp você precisará modificar os métodos existentes dessa super classe ou até criar novos métodos, e isso é péssimo por vários motivos, você precisa mexer em algo que já está funcionando correndo risco de quebrar outras funcionalidades em lugares que você nem sabia que seriam impactados. E você também sobrecarrega cada vez mais essa super classe até o dia que a manutenção dela se torne insuportável!

Separando as classes e criando essa ponte entre a estrutura e o comportamento conforme proposto no vídeo, você pode tentar visualizar isso em um diagrama de classes e vai perceber claramente como fica mais fácil saber qual classe precisa ser modificada, ou quais serão impactadas por uma mudança que ocorra nas regras de negócio do seu sistema.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software