DEV Community

João Pedro Resende
João Pedro Resende

Posted on

O que é micro front end?

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.

Exemplo de monolito

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.

Separação do front-end e back-end

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.

Microsserviços


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.

Exemplo micro front ends

Na prática, negócios podem separar produtos web em micro front-ends dividindo seus times de acordo com as funcionalidades dos seus sistemas.

Exemplo micro front ends

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)

Collapse
 
tierescassio profile image
me = {name: 'Cássio 🚩'}

Muito esclarecedor e bem contextualizado, parabéns e obrigado!

Collapse
 
jessilyneh profile image
Jessilyneh

Ficou excelente, parabens!!!

Collapse
 
jpbrab0 profile image
João Pedro Resende

Muito obrigado!

Collapse
 
eduardoklosowski profile image
Eduardo Klosowski

Gostei do artigo e principalmente da imagem de exemplo com diferentes frameworks.

Collapse
 
mayarabtm profile image
Mayara B.

Muito bom, gostei bastante do artigo!

Collapse
 
jpbrab0 profile image
João Pedro Resende

Obrigado! :)