Leodario.com

Leodario.com – Tudo sobre Tecnologia

Aula 7 – API JavaScript, Node.js e Express – JavaScript Moderno ES6+ – const, let, arrow functions

Imagem destacada da aula de API

Introdução (3 min)

Imagine uma caixa de ferramentas. const, let e arrow functions são como ferramentas novas e aprimoradas que tornam a construção de APIs com JavaScript mais eficiente e organizada. Dominar estas ferramentas é indispensável para criar APIs modernas, robustas e fáceis de manter.

Nesta aula, você dominará a declaração de variáveis com const e let, e a sintaxe concisa das arrow functions. Isso lhe permitirá escrever código JavaScript mais limpo, eficiente e alinhado com as melhores práticas da indústria, preparando-o para o desenvolvimento profissional em Node.js e Express.

No contexto do ecossistema Node.js/Express, const, let e arrow functions são peças fundamentais para escrever código servidor de alta qualidade, facilitando a organização e manutenção de projetos complexos.

Conceito Fundamental (7 min)

Antes do ES6 (ECMAScript 2015), var era a única forma de declarar variáveis em JavaScript. const e let introduzem escopo de bloco, o que significa que uma variável declarada dentro de um bloco de código (ex: dentro de um if ou for) só é acessível dentro daquele bloco. Isso promove a organização e previne conflitos de nomes.

const: Utilizado para declarar constantes. Seu valor não pode ser reatribuído após a declaração inicial. Ideal para valores que não devem ser alterados durante a execução do programa. Um caso de uso comum é para armazenar chaves de API.

let: Permite declarar variáveis cujo valor pode ser modificado. Use let quando você precisar reatribuir o valor de uma variável dentro do seu código, como em um contador de loop.

Arrow Functions: Oferecem uma sintaxe mais curta para declarar funções. Elas implicitamente vinculam o this, simplificando o trabalho com funções de callback e métodos de objeto.

Vantagens: Código mais conciso e legível, melhor gerenciamento de escopo com const e let. Integração perfeita com outras tecnologias modernas de JavaScript.

Desvantagens:const exige inicialização na declaração. A brevidade das arrow functions pode, às vezes, dificultar a leitura para iniciantes.

Implementação Prática (10 min)

// Declaração de constante
const PORTA = 3000;

// Declaração de variável com let let contador = 0;

// Arrow function para incrementar o contador const incrementarContador = () => { contador++; console.log(Contador: ${contador}); };

// Exemplo de uso em um servidor Express const express = require('express'); const app = express();

app.get('/', (req, res) => { incrementarContador(); res.send(Olá! Você acessou esta página ${contador} vezes.); });

app.listen(PORTA, () => { console.log(Servidor rodando na porta ${PORTA}); });

Este código demonstra a declaração de uma constante PORTA, uma variável contador com let e uma arrow functionincrementarContador. O servidor Express registra quantas vezes a rota raiz foi acessada, ilustrando um caso de uso prático.

Exercício Hands-On (5 min)

Crie uma API com Express que utilize const para armazenar uma mensagem de boas-vindas e let para armazenar um contador de acessos. Use uma arrow function para incrementar o contador e exibir a mensagem e o número de acessos na resposta da rota /.

Solução:

const express = require('express');
const app = express();
const MENSAGEM = "Bem-vindo à minha API!";
let acessos = 0;

const incrementarAcessos = () => acessos++;

app.get('/', (req, res) => { incrementarAcessos(); res.send(${MENSAGEM} Acessos: ${acessos}); });

app.listen(3000, () => console.log('Servidor rodando na porta 3000'));

Para testar, execute o código com node nome_do_arquivo.js e acesse http://localhost:3000 no seu navegador. A cada acesso, o contador deve incrementar.

Troubleshooting: Certifique-se de ter o Node.js e o Express instalados (npm install express). Verifique se a porta 3000 não está sendo usada por outro processo.

Próximos passos: Explore outros recursos do ES6+ como template literals, destructuring e classes. Continue praticando a construção de APIs com Express.

🚀 Pronto para a próxima aula?

Continue sua jornada no desenvolvimento de APIs e domine Node.js & Express!

📚 Ver todas as aulas