Arquitetura e Design de Software: Clean Architecture

Por Felipe Barbosa, 08/03/2023

Clean Architecture

Arquitetura é sobre como construir soluções que não só funcionam (agora), mas que continuarão a funcionar e entregar valor aos seus usuários de forma contínua, escalável, testável, que seja fácil de manter e resiliente a mudanças.

Depois de ter lido livros como Clean Code e Node.js Design Patterns há algum tempo e de ter trabalhado em projetos o suficiente para me convencer de que eu tenho uma proficiência mínima em escrever código com um padrão de qualidade bastante razoável, o passo natural seguinte foi o de me debruçar sobre um dos tópicos mais importantes e bonitos da engenharia de software: arquitetura.

Depois de alguma pesquisa procurando os recursos certos por onde iniciar essa jornada, encontrei um indivíduo chamado Khalil Stemmler.

Khalil é um engenheiro de software muito talentoso que dedicou os últimos anos de sua carreira ao ensino e aprendizado do universo da arquitetura. O seu livro Solid - The Software Design and Architecture Handbook é um excelente ponto de partida para iniciar os estudos na área, principalmente para quem vem do ecossistema Node: o livro tem foco total em arquitetura com Node e TypeScript!

Porém, apesar de ir bastante longe em tópicos como DDD, testes, arquitetura em camadas e tantos outros, se você quiser se aprofundar de verdade no assunto ainda vai ter que recorrer a livros específicos em cada um dos tópicos que compõe essa área.

Depois de ter concluído a leitura do mesmo, fiquei na dúvida sobre qual ler em seguida. DDD é uma abordagem que me interessou bastante, então um bom candidato seria o clássico livro do Eric Evans.

Porém DDD é uma abordagem específica e eu senti que queria uma visão mais ampla.

Por isso me decidi pelo Clean Architecture do Uncle Bob. Já tinha lido o Clean Code e eu realmente gosto bastante do estilo dele. Lendo o preâmbulo do livro fiquei ainda mais certo de que era a escolha certa.

Porém dessa vez resolvi fazer algo diferente. Ao invés de trabalhar no livro sozinho de forma isolada decidi que seria bastante interessante compartilhar meu progresso ao longo do mesmo. Portanto, à medida que for avançando no livro pretendo trazer notas, comentários, reflexões, aprendizados e discussões sobre o conteúdo abordado. E esse é o pequeno anúncio que eu queria trazer com esse post.

Na verdade, minha intenção de médio prazo é criar uma pequena comunidade de estudos avançados em arquitetura e design de software. Porque aprender de forma coletiva é sempre mais construtivo do que aprender sozinho!

Se você se interessa por essa área, não hesite em entrar em contato comigo!

É isso! Fiquem seguros e sãos. Vejo vocês em breve.

Este artigo é parte da série Clean Architecture baseada no livro de mesmo nome do Uncle Bob. Confira os demais:

Seguinte: Arquitetura: o bem maior

Gostando até aqui? ✍️

Receba atualizações de conteúdo diretamente na sua caixa de entrada!