Olá pessoal, neste artigo vou explicar um pouco sobre o micro front-end e as vantagens que ele proporciona.
Antes de realmente explicar o que é micro front-end, vamos entender alguns outros conceitos como:
- Monolitos
- Separação do front-end e back-end
- Conceito de microsserviços
Monolitos
Uma aplicação monolítica consiste em um codebase centralizado em uma única unidade, ou seja, back-end e front-end em um único repositório. Não há distinção estrutural de front-end pra back-end tudo está dentro do mesmo código fonte.
Problemas comuns em uma aplicação monolítica
Alguns problemas comuns de uma aplicação monolítica.
- Alta complexidade para corrigir bugs
- Dificuldades para implementar novas features
- Alto nível de interdependências no acoplamento de módulos
- Dificuldades na coordenação entre times
- Alto esforço para integração de novos desenvolvedores
Separação do front-end e back-end
Com o passar do tempo, o desenvolvimento passou a diferenciar as bases de códigos do back e front. Isso ajudou a melhorar o cenário caótico de código que aplicações monolíticas traziam.
Isso permitiu que times conseguissem fazer deploys sem depender do outro.
Microsserviços
Ainda neste contexto, surgiu o conceito de arquitetura de microsserviços. Quando falamos em microsserviços nos referindo a uma funcionalidade que pode ser dividida em partes menores.
Depois de entender esses conceitos podemos, finalmente, falar sobre micro front-ends!
Micro front-ends
Micro Front-end é um estilo arquitetônico que separa uma aplicação de front em várias camadas menores, cada uma sendo responsável por um módulo específico da aplicação, normalmente separadas por domínios ou contextos de uso, permitindo assim, que diferentes times cuidem dessas funcionalidades de forma independente.
Na prática, negócios podem separar produtos web em micro front-ends dividindo seus times de acordo com as funcionalidades dos seus sistemas.
Por fim algumas vantagens de uma arquitetura micro front-end:
- Mais facilidade na correção de bugs
- Facilidade na integração de novas pessoas no projeto
- Mais facilidade de implementação de novas features
- Facilidade na coordenação entre times
- Times mais independentes
Obrigado por ler esse artigo até aqui!
Este artigo foi escrito com a ajuda do Vinicius Morellato, siga ele no Linkedin
Me siga nas redes sociais! https://links.jpres.dev
Até o próximo artigo!
Top comments (6)
Muito esclarecedor e bem contextualizado, parabéns e obrigado!
Ficou excelente, parabens!!!
Muito obrigado!
Gostei do artigo e principalmente da imagem de exemplo com diferentes frameworks.
Muito bom, gostei bastante do artigo!
Obrigado! :)