Executando verificação de segurança...
1

nodeJS express para que?

olá pessoal um assunto que eu nunca entendi direito é sobre express, mesmo lendo a documentaçao deles e vendo videos sobre a lib express eu nunca entendi realmente para que adicionamos complexidade em algo tão simples, claro que posso ter uma visao limitada do assunto entao abri esse post aqui para perguntar, existe alguma coisa realmente util para usar no express ou é uma tecnologia ultrapassada.

Carregando publicação patrocinada...
2

O express tem o motivo de ser um framework que não é opinativo na minha visão, ou seja, você constrói da forma e organiza que mais convém para o projeto.
Existem outros frameworks como NestJS que possui uma CLI que possui algumas facilidades como bibliotecas que conectam ao banco, fazem autenticação etc... mas tudo isso é abstraído pelo framework.
Creio que se a pessoa é nova e não tem conhecimento como funcionam as coisas por baixo dos panos, acho que seja interessante iniciar pelo express, ter a compreensão de como funcionam as coisas etc... e depois ir migrando para algum outro framework como NestJS ou Addonis que facilitam e deixam de forma mais rápida.

1

Posso estar sendo vago e um pouco superficial aqui, mas acredito que a principal razão de se adotar o Express, é devido ao server com sistema de rotas. É muito chato fazer isso na mão, aqui um exemplo sem framework:

    http.createServer(function (request, response) {
      var path = url.parse(request.url, true).pathname;

      if (request.method === 'POST') {
        if (path === '/hifive') {
          response.writeHead(200,{'Content-Type':'image/jpg'});
          [...]
        }
        else {
         response.end(404);
       }
     }

Já no Express, a coisa fica um pouco mais organizada e de fácil entendimento:


   const express = require('express')
   const app = express()
   const port = 3000

   app.get('/', (req, res) => {
     res.send('Hello World!')
   })

   app.listen(port, () => {
     console.log(`Example app listening on port ${port}`)
   })

Algumas linguagens modernas como o Golang, já possuem um sistema de server e rotas 'built in', mas acredito que o node tem tudo para agregar funcionalidades como essa no futuro.

Espero ter ajudado, sei que é apenas um dos diversos aspectos e funcionaliades do Express, mas na minha opinião, é o que mais se destaca no primeiro contato.

1

Isso, é verdade. Mas existem algumas bibliotecas e frameworks que já entregam isso quase pontos. Sem contar no Nextjs que já deixa as rotas prontas pra usar. Então se for considerar isso como um ponto para usar o Express, existem alternativas melhores. Ainda não compreendi o porque de ele ser tão usado ainda, mas estou aqui pra aprender.

1

Eu estou no mesmo barco. Ainda estou me familiarizando com algumas tecnologias que usam no node. Mas uma que não vejo muito sentido é o express pois realmente existem maneiras mais simples de se fazer a mesma coisa, e que na minha opinião são melhores.

1

Como muita coisa no mundo da tecnologia depende. O Nest é um framework robusto que já traz todo um sistema de roteamento por exemplo, mas será que cabe em toda API que for desenvolvida o uso do Nest? O express e/ou fastify podem ser alternativas melhores para projetos menores e mais simples.

Só queria entender melhor quando vc diz ter outras alternativas simples para o express, teria como exemplificar?

1

Dúvida super válida, mas como os colegas apontaram, poderias sugerir alguma das formas mais simples?

Se possível, uma comparação do mesmo problema resolvido usando Express e usando a forma mais simples apontada.

Assim teremos como responder melhor a dúvida e iniciar uma discussão mais saudável.