Clean Architecture, 2 anos depois
UPDATE: Este post é antigo e não reflete mais o que eu acredito ser uma estrutura ideial. Em 2023, o que estou usando e recomendando é o que meus colegas e eu descrevemos neste post.
UPDATE: Este post é antigo e não reflete mais o que eu acredito ser uma estrutura ideial. Em 2023, o que estou usando e recomendando é o que meus colegas e eu descrevemos neste post.
Uma das grandes vantagens da linguagem Go é sua biblioteca padrão, que contém muitas das funcionalidades que são úteis no desenvolvimento de aplicações modernas, como servidor e cliente HTTP, parser de JSON, e testes. É exatamente sobre esse último ponto que vou falar neste post.
Nas últimas semanas a Codenation vem passando por um crescimento bem significativo. Confirmando a frase do grande Bruno Ghisi que fala que “na escala tudo quebra”, funcionalidades que sempre funcionavam perfeitamente começam a tornar-se problemáticas.
Este texto faz parte de uma série de posts que estou fazendo com exemplos de aplicações usando a Clean Architecture. Os outros posts que fazem parte desta série são:
Neste post vou falar sobre um formato relativamente novo de arquivo de dados, e como usá-lo em Go.
De tempos em tempos algum amigo me manda uma mensagem parecida com essa:
Fala meu querido! Tudo blz? Tava querendo iniciar no Go (influencia sua heheeh) Tu recomenda algum curso ou ir pela documentação mesmo?
Dentre as decisões técnicas que fizemos durante o desenvolvimento da Codenation, uma das mais acertadas foi a escolha de Go como linguagem principal.
O termo Object Calisthenics foi introduzido por Jeff Bay e publicado no livro Thought Works Anthology. Trata-se de um conjunto de boas práticas e regras de programação que podem ser aplicadas para melhorar a qualidade do código.
Um dos itens abordados pela metodologia twelve-factor app é a automatização de processos administrativos, como execução de scripts e migração de dados. É exatamente sobre isso que vou falar neste post: como automatizamos a migração de dados usando Go e MongoDB.