Padrões de Design C #: O Padrão de Fachada

Morgan Kenyon Seg. 23 de jul · 3 min ler Foto de no

Design Pattern tempo mais uma vez! Os Padrões de Design nos ajudam a pensar em problemas comuns que os desenvolvedores encontram.

Em artigos anteriores, discuti o e o . Hoje vou falar sobre o padrão da fachada. Um padrão de design simples que ajuda a abstrair um código mais complexo.

Todos os exemplos para este e outros padrões de projeto podem ser encontrados no .

Vamos entrar.

Problema

Você é um desenvolvedor de aplicativos em um projeto antigo que possui problemas de estabilidade. Um momento está funcionando muito bem, no momento seguinte, algo crítico está errado.

A gerência decidiu que eles precisam de algum tipo de verificação de integridade para o aplicativo. Eles fazem com que você desenvolva uma solução para conhecer a integridade do aplicativo.

Como desenvolvedor de aplicativos, você sabe tudo o que precisa ser verificado para o sistema estar funcionando. Um par de bancos de dados, alguns serviços de downstream, dependências de aplicativos bastante normais.

Você pode relatar ao gerenciamento que você criou algumas APIs, uma para cada dependência individual, que retorna um verdadeiro / falso sobre se está funcionando. Basta ligar para todos para ver se tudo está funcionando corretamente.

Mas isso não é uma boa solução. Isso também força alguém a entender as complexidades do seu aplicativo. O que não faz muito sentido.

Além disso, e se outra dependência for introduzida, você vai expor outra API para essa? Cada nova dependência requer uma nova API? Isso não é escalável.

Uma maneira muito melhor é usar o padrão de fachada. Como este é um artigo sobre o padrão de fachadas, vamos usá-lo.

O padrão da fachada

define o padrão de fachada como:

“Uma fachada é um objeto que serve como uma interface frontal mascarando um código subjacente ou estrutural mais complexo”.

Ele fornece uma interface que facilita a interação com alguns sistemas. No nosso caso, em vez de ter vários terminais, vamos ter apenas um terminal. Então, internamente, esse endpoint verifica tudo o que precisa.

Dang! Agora só precisamos chamar um método em vez de quatro. O uso do padrão de fachada simplifica a responsabilidade do chamador. Ele também permite que o chamador saiba se nosso sistema está saudável sem precisar entender seu sistema.

Agora todo mundo vai saber quando o seu sistema cair. Permitir que você e sua equipe comecem a investigar e corrigir o problema assim que ocorrer.

Takeaways

O padrão de fachada é um padrão mais simples, que você pode ter usado antes sem saber. Se você tivesse, agora você sabe o nome e pode impressionar seus amigos.

Como eu disse antes, Design Patterns não é uma bala de prata. Apenas conhecer alguns Padrões de Design não significa que você deva usá-los. Padrões de design ajudam a responder a problemas comuns. Você tem que descobrir se a resposta fornecida por um Padrão de Design se encaixa no problema. Conhecê-los, usá-los quando apropriado, bask em seu conhecimento de engenharia savy!