DEV Community

Nathalia Pavan
Nathalia Pavan

Posted on

Arquitetura hexagonal: a sinergia dos princípios de desenvolvimento e boas práticas

Venhamos e convenhamos, desenvolver uma API robusta e escalável nem sempre vai ser um mar de rosas. Em meio a muitas dúvidas, linguagens, frameworks e mais uma infinidade de opções e combinações, a escolha da arquitetura certa pode fazer toda a diferença. Recentemente, enquanto iniciava um projeto pessoal, escolhi um framework unopinionated pra ter mais liberdade e flexibilidade na construção da estrutura e adotei a Arquitetura Hexagonal (eu sempre me agradeço quando começo assim kkkkk).

A Arquitetura Hexagonal, também conhecida como Arquitetura Ports and Adapters, visa separar as preocupações da aplicação em diferentes camadas, facilitando a manutenção, testabilidade e escalabilidade do código. Ela se baseia na ideia de que as regras de negócio devem estar no centro da aplicação, isoladas das dependências externas, como frameworks e bibliotecas.

Durante o desenvolvimento, pude observar que os princípios do SOLID e os padrões de projeto (dentro do meu contexto) simplesmente surgiram de forma natural. Isso ocorre porque a arquitetura promove a separação de responsabilidades e a modularização do código, o que facilita a aplicação desses princípios e padrões.

Particularmente, eu sempre fiquei preocupada pensando se minhas implementações estavam seguindo a sopa de letrinhas 😂 Essa abordagem acaba aliviando a preocupação de estar aplicando ou não esses princípios, pois uma estrutura clara, bem definida e modularizada cria um ambiente propício para esses conceitos. Não é necessário gastar energia pensando se a estrutura está bem definida, pois a própria arquitetura guia o desenvolvimento nessa direção. Acaba virando uma consequência, sabe?

Outro benefício significativo e que estou curtindo muito é a facilitação dos testes unitários. A inversão de dependência promovida por esse tipo de arquietura permite que as dependências externas sejam substituídas por mocks durante os testes, facilitando a criação de casos de teste isolados. Sério, é só alegria kkkk

Em resumo, ao utilizar uma arquitetura bem definida, os conceitos de SOLID e os padrões de projeto se tornam consequências naturais do processo de desenvolvimento. Não precisamos fritar o cérebro pensando explicitamente neles a todo momento, pois eles estão embutidos na própria estrutura da aplicação, são complementares.

Ao iniciar um novo projeto, considere a Arquitetura Hexagonal como uma abordagem para alcançar uma base de código confiável e flexível. Isso vai permitir implementações muito mais intuitivas e fluidas, facilitando a manutenção e aprimoramento do código durante toda sua evolução. Você do futuro ficará muito grato, acredite

Top comments (0)