Mutirepo ou Monorepo #9
-
Olá @huogerac uma questão que me surgiu dando uma zapeada pelo repositório e lendo os itens na Discussão e nas Issues é a seguinte: vamos usar monorepo ou multirepo? Ou seja, monorepo teremos tudo, front e backend, num único repositório. Já num multrepo cada grande parte do sistema, no nosso caso front e backend, ficam em repositórios separados. Enfim, foi uma dúvida que me surgiu e gostaria de saber qual a melhor opção entre esse dois, ou, quem sabe, se há uma terceira possibilidade que seja melhor ainda que qq uma dessas duas que apresentei! |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
Mutirepo! Tudo tem vantagens e desvantagens, certo? Mas uma vantagem desta separação é que nos últimos projetos que trabalhei, cada sprint ou milestone tinha o foco é em uma parte, ou seja, muitas vezes ficamos semanas fazendo commits/deploy apenas no frontend, o backend está lá funcionando e atendendo novas funcionalidades sem precisar de mudanças. Uma desvantagem é claro, é que temos que sincronizar bem as funcionalidades, imagina o backend mudar uma API completamente e não sincronizar um deploy em conjunto com o frontend? Vamos ter erros graves! Obs: Já vi ter um repositório apenas com uma pasta frontend e outra backend, cada uma tem seu docker-compose, seu requirements ou package.json...mesmo com a vantagem de estar tudo junto! É opinão pessoal, mas não gosto muito deste caminho! Em resumo, quando tenho um projeto backend que tem como interface uma API, acredito que faz sentido estar separado! Principalmente pq o client pode ser diversos, poderiamos ter um client mobile (nativo), outro web, outro um sdk por linha de comando....saca? não apenas 1 para 1! E você, como gosta de organizar? |
Beta Was this translation helpful? Give feedback.
Mutirepo!
Logo este repo será o frontend e na Aula 3 vamos iniciar o novo repo hackernews-api que será o backend python.
Tudo tem vantagens e desvantagens, certo? Mas uma vantagem desta separação é que nos últimos projetos que trabalhei, cada sprint ou milestone tinha o foco é em uma parte, ou seja, muitas vezes ficamos semanas fazendo commits/deploy apenas no frontend, o backend está lá funcionando e atendendo novas funcionalidades sem precisar de mudanças.
Se tivesse tudo junto, toda hora teriamos que fazer deploy de ambas aplicações. gerar imagens docker no registro ou no mínimo configurações no CI para ligar com deploy de apenas 1 parte.
Uma desvantagem é claro, é que temos que sincro…