O que é Express?
Antes de começarmos com o protagonista deste artigo, temos que falar sobre uma tecnologia muito importante que devemos conhecer antes de iniciarmos nossa jornada. Não é nada mais nada menos que Node.js.
O que é Node.js?
Node.js é um ambiente de execução de plataforma cruzada de código aberto baseado em JavaScript.
Para entender um pouco por que o Node.js existe, o ideal é que tenhamos conhecimentos básicos sobre JavaScript e como ele funciona.
Antes da criação do Node.js, não havia possibilidade de executar JavaScript nativamente no lado do servidor. Originalmente, o JavaScript foi projetado para o frontend e executado no lado do cliente nos navegadores. Com o tempo, sua versatilidade levou à sua expansão para o backend.
Por outro lado, antes da criação do Node.js, tecnologias de terceiros como SpiderMonkey e JScript eram necessárias para usar JavaScript no servidor. O objetivo inicial do JavaScript era melhorar a interação entre as páginas web e os usuários, facilitando a criação de funcionalidades complexas e melhorando a fluidez das interfaces de usuário (UI).
Porém, com a criação do Node.js, um ambiente de execução JavaScript do lado do servidor foi estabelecido, permitindo seu uso na construção de aplicações fullstack.
Assim, o JavaScript se tornou uma linguagem que pode ser usada tanto no desenvolvimento frontend quanto backend de aplicações web.
Agora, com esta pequena introdução, vamos falar do Express.
O que é Express?
Express é um dos frameworks de back-end mais populares para desenvolvimento web com Node.js e quase se tornou um padrão para aplicativos desenvolvidos com Node. Ele oferece recursos robustos, é leve e permite implantação rápida, o que o torna uma excelente escolha para a criação de back-ends escalonáveis, fáceis de manter e de alto desempenho.
O Express fornece uma camada adicional que facilita o roteamento e o tratamento de solicitações e respostas HTTP, tornando-o ideal para implantação de aplicativos.
Por que usar Express?
Uma das maiores vantagens e motivos para sugerir o uso do Express é sua abordagem simples e minimalista. A curva de aprendizado é baixa, principalmente para quem já está familiarizado com JavaScript. Isso torna o desenvolvimento divertido e amigável, sem sacrificar a flexibilidade.
O Express não impõe uma estrutura rígida, permitindo uma fácil adaptação às necessidades específicas do projeto. Além disso, sua alta compatibilidade com outras tecnologias e a capacidade de adicionar middleware e pacotes facilitam o gerenciamento eficiente de sessões, segurança, autenticação e outras funcionalidades.
Outra grande vantagem é que o Express é um projeto open source, em constante atualização e que conta com uma grande comunidade. Isto fornece acesso a extensa documentação, tutoriais e recursos online, enriquecendo significativamente o processo de aprendizagem.
Como saber se devo utilizar o Express em meus desenvolvimentos?
A decisão de usar o Express dependerá de algumas considerações:
Quer você crie um aplicativo da web de página única, híbrido ou de várias páginas; servidor para qualquer tipo de aplicação ou desenvolvimento de APIs, o Express será com certeza uma excelente opção.
É ideal para quem deseja evitar complexidades desnecessárias no desenvolvimento sem sacrificar o desempenho e a eficiência do framework e do código.
Quem suporta o uso de Node.js e Express?
A Express conta com o apoio de organizações e empresas reconhecidas que implementaram o framework em seus desenvolvimentos. Alguns exemplos incluem: Walmart, Paypal, Uber, Netflix e LinkedIn, entre outros.
Primeiros passos no Express
Passo 1: Instalação
A primeira coisa que você precisa é criar um novo projeto Node.js e depois instalar o Express como uma dependência.
Abra um terminal e execute os seguintes comandos:
mkdir novo-projeto
cd novo-projeto
npm init -y
npm install express
Isso criará uma pasta chamada novo-projeto, inicializará um arquivo package.json com a configuração padrão do Node e, em seguida, instalará o Express.
Passo 2: Criar um servidor básico
Crie um arquivo chamado app.js na pasta raiz do seu projeto e adicione o seguinte código para criar um servidor web básico com Express:
const express = require('express')
const app = express()
const port = 3000
app.get('/', (req, res) => {
res.send('Olá mundo')
})
app.listen(port, () => {
console.log(`Servidor en ejecución en http://localhost:${port}`)
})
Este código importa o Express, cria uma instância do aplicativo, define uma rota para o caminho raiz ("/") e configura o servidor para escutar na porta 3000. Quando http://localhost:3000 é acessado em seu navegador, você deverá ver a mensagem "Olá, mundo".
Passo 3: Adicionar mais rotas
Você pode adicionar mais rotas e respostas ao seu aplicativo Express. Por exemplo, você pode adicionar uma rota para uma página Home e outra para uma página de Product. Aqui está um exemplo:
app.get('/about', (req, res) => {
res.send('Home')
})
app.get('/contact', (req, res) => {
res.send('Product')
})
Paso 4: Middleware
Middleware são funções executadas no fluxo de solicitação e resposta. Eles podem realizar várias tarefas antes de enviar uma resposta ao cliente. Middleware é uma parte fundamental do Express e permite adicionar funcionalidades adicionais a qualquer aplicação de forma modular e reutilizável. Você pode adicionar middleware usando app.use(). Por exemplo:
app.use(express.json())
Este middleware permitirá que seu aplicativo manipule dados no formato JSON nas solicitações recebidas.
Além disso, você pode criar seu próprio middleware personalizado para executar funcionalidades e processos específicos em suas rotas. Um middleware customizado é simplesmente uma função que recebe três argumentos: req, res e next. Você deve chamar next() dentro do middleware para passar a solicitação para o próximo middleware na cadeia. Por exemplo:
function miMiddleware(req, res, next) {
// Executar alguma tarefa antes de passar para o próximo middleware ou enviar a resposta
console.log('Meu próprio middleware rodando')
next()
}
app.use(miMiddleware)
Espero que este artigo seja útil para você em seus desenvolvimentos futuros.
Vejo você na próxima vez!
A Revelo Content Network acolhe todas as raças, etnias, nacionalidades, credos, gêneros, orientações, pontos de vista e ideologias, desde que promovam diversidade, equidade, inclusão e crescimento na carreira dos profissionais de tecnologia.