Um pouco sobre Arquitetura Hexagonal

um-pouco-sobre-arquitetura-hexagonal

Eae gente bonita, beleza? Dessa vez vim falar um pouco sobre arquitetura e queria começar falando sobre a arquitetura hexagonal, que pelo menos assusta, mas na verdade, ela é bem simples.

O que é arquitetura de software?

Pode parecer óbvio mas nem todas as pessoas imaginam que um software tem uma arquitetura, então vou dar uma breve explicada sobre. A arquitetura de software é a forma como o seu código é organizado e arquiteto, não só as pastas que foram criadas mas também a regra que o time irá seguir para saber qual parte do software deve se relacionar com quem. Pode ser um pouco confuso, mas prometo que vai ficar mais simples!

Confuso

Como funciona a arquitetura hexagonal?

Bom a arquitetura hexagonal ou também conhecida como ports and adapters tem o objetivo de isolar a camada de regra de negócio da sua aplicação fazendo que você possa trocar banco, serviços ou até mesmo a forma como é consumida sem afetar o core do app.

Normalmente uma aplicação que trabalha com essa arquitetura costuma ter 3 pastas.

Porém é importante disser que não é nada escrito na pedra e você pode alterar e ver esse mesmo tipo de arquitetura de formas diferentes. Recomendo dar uma pesquisada no Github, vai ver muita coisa legal lá.

  • Infraestrutura: Aqui fica toda a parte de infraestrutura da aplicação como apis rest, serviços de mensageria e coisas do tipo.
  • Application: Aqui você vai ser os casos de uso da sua aplicação ou podendo ter até serviços, vai depender da situação.
  • Core: Aqui você vai ter os casos de uso da sua aplicação ou até mesmo serviços, dependendo da situação.

Abaixo tem uma imagem que pode ilustrar bem o que foi explicado a cima.

Image description

Como funciona a comunicação entre as camadas?

Bom tive a experiência trabalhando com java e apliquei também utilizando NestJS e a palavra-chave são interfaces! Você só precisa criar uma interface dizendo o que a camada vai receber e vai retornar, assim sendo a sua implementação irrelevante para a camada que está utilizandoe assim podendo ter implementações usando vários bancos diferentes mas sempre mantendo o mesmo “contrato” entre camadas.

Quando usar

A arquitetura hexagonal é ótima, mas não é uma bala de prata e deve ser usada no momento correto para evitar complexidade desnecessária em seu projeto. É altamente recomendada quando você tem diversos bancos de dados ou quando sua aplicação precisa ser consumida de formas diferentes. Assim, você terá a mesma regra de negócio sendo usada e sua aplicação poderá trabalhar com várias peças sem afetar outra camada.

Conclusão

Em resumo, podemos dizer que a arquitetura hexagonal serve para separar sua aplicação em camadas e isolá-las. Isso evita que sua regra de negócio esteja sempre misturada com a lógica da sua aplicação.

Espero que tenha sido claro e tenha ajuda a entender um pouco mais sobre o assunto, fique a vontade para dúvidas e sugestões abaixo!

Recomendo darem uma olha em projeto no Github, pesquisem no google por arquitetura hexagonal github na linguagem que quiserem e sejam felizes. Recomendo apertar a tecla ‘.’ (ponto final) do seu teclado quando estiverem logados para navegar e visualizar de uma forma melhor os projetos.

Se chegou até aqui, me segue la nas redes vizinhas.

thank you dog

Total
0
Shares
Leave a Reply

Your email address will not be published. Required fields are marked *

Previous Post
project-management-apprenticeships:-a-uk-guide

Project Management Apprenticeships: A UK Guide

Next Post
how-to-build-a-multichannel-digital-marketing-strategy

How to Build a Multichannel Digital Marketing Strategy

Related Posts