Node.js e npm
Node.js
Node.js é um ambiente de execução JavaScript baseado no motor V8 do Google Chrome, que permite aos desenvolvedores executar código JavaScript no lado do servidor. Antes de sua existência, o código JavaScript só podia ser executado em um navegador web. Para o propósito de nosso curso, é importante porque executaremos código JavaScript que interage com a blockchain e precisamos de um ambiente capaz de processar esse código.
Instalação do Node.js e npm
Instalación no Windows
Baixar o Instalador:
Vá para a página de download do Node.js e baixe o instalador para Windows.
Executar o Instalador:
Execute o instalador e siga as instruções do assistente de instalação.
Verificar a Instalação:
Abra um terminal (Command Prompt ou PowerShell) e execute os seguintes comandos:
nginxCopiar código
node -v npm -v
Você deverá ver as versões instaladas do Node.js e npm.
Instalação no macOS
Instalar o Homebrew (se não estiver instalado):
Abra um terminal e execute:
bashCopiar código
/bin/bash -c "$(curl -fsSL <https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh>)"
Instalar o Node.js usando o Homebrew:
Execute o seguinte comando no terminal:
brew install node
Verificar a instalação:
Execute os seguintes comandos no terminal:
node -v npm -v
Você deverá ver as versões instaladas do Node.js e do npm.
npm
npm (Node Package Manager) é o gerenciador de pacotes do Node.js, que permite instalar e atualizar pacotes de terceiros para usá-los no seu próprio código.
Vamos ver um exemplo de como utilizar o Node.js e o npm em um projeto simples que será um servidor web básico.
Criação de um Projeto Node.js
Criar um Diretório para o Projeto
Abra um terminal e navegue até o diretório onde deseja criar seu projeto, depois execute:
mkdir mi-proyecto-node cd mi-proyecto-node
Inicializar o projeto com npm
Execute o seguinte comando para criar um arquivo
package.json
. Mais adiante explicaremos em mais detalhes o uso desse arquivo.npm init
Siga as instruções para completar a configuração do projeto. Você pode aceitar as configurações padrão pressionando Enter.
Instalar o Express
Certifique-se de estar no diretório do projeto e execute:
bashCopiar código
npm install express
Express é um framework web minimalista e flexível que fornece ferramentas para desenvolver aplicações web e móveis.
Criar o arquivo do servidor
No diretório do projeto, crie um arquivo chamado
server.js
e adicione o seguinte código:javascriptCopiar código
const express = require('express'); const app = express(); const port = 3000; app.get('/', (req, res) => { res.send('Hello World!'); }); app.listen(port, () => { console.log(`Server running at <http://localhost>:${port}/`); });
Certifique-se de salvar as alterações.
Executar o servidor
No terminal, estando no diretório do projeto, execute:
bashCopiar código
node server.js
Verificar o servidor:
Abra um navegador e acesse:
http://localhost:3000/
.Você deverá ver a mensagem "Hello World!". Se sim, parabéns!
Dessa forma, vimos como usar o npm para instalar pacotes como o Express e como o Node.js nos ajuda a executar código JavaScript — que, neste caso, nos permitiu iniciar um servidor web.
A seguir, falaremos sobre o arquivopackage.json
que é utilizado na configuração de projetos com Node.js.
Arquivo package.json
O arquivo package.json
é um arquivo de configuração essencial em qualquer projeto Node.js. Ele contém informações sobre o projeto e suas dependências, entre outros detalhes.
A seguir, um exemplo
{
"name": "mi-proyecto",
"version": "1.0.0",
"description": "Descripción de mi proyecto",
"main": "index.js",
"scripts": {
"start": "node index.js",
"dev": "nodemon index.js"
},
"dependencies": {
"express": "^4.17.1"
},
"devDependencies": {
"nodemon": "^2.0.7"
},
"author": "Tu Nombre",
"license": "MIT"
}
Dependências
As dependências são módulos de código (também conhecidos como pacotes ou bibliotecas) que o seu projeto precisa para funcionar corretamente. Essas dependências são gerenciadas automaticamente pelo npm, que facilita sua instalação, atualização e administração.
Dependências de produção (
dependencies
):Essas são as dependências necessárias para que sua aplicação funcione em um ambiente de produção. Elas são especificadas no arquivo
package.json
no campodependencies
.Exemplo:
{ "dependencies": { "express": "^4.17.1" } }
Neste caso,
express
é uma dependência de produção.
- Dependências de desenvolvimento (
devDependencies
):Essas são as dependências necessárias apenas durante o desenvolvimento da sua aplicação, como ferramentas de teste, transpiladores e analisadores de erros. Elas são especificadas no arquivo
package.json
no campodevDependencies
.Exemplo:
{ "devDependencies": { "nodemon": "^2.0.7" } }
Neste caso,
nodemon
é uma dependência de desenvolvimento.
Instalação de dependências
Instalar todas as dependências:
Execute o seguinte comando no diretório do seu projeto. Isso instalará todas as dependências especificadas no seu arquivo
package.json
.npm install
- Atualizar dependências
Atualizar todas as dependências:
Para atualizar todas as dependências para suas versões mais recentes permitidas pelo intervalo definido no
package.json
.npm update
Atualizar uma dependência específica:
Para atualizar uma dependência específica para a versão mais recente permitida pelo intervalo de versões definido no
package.json
.npm update nombre-del-paquete
- Remover dependências
Remover uma dependência de produção:
Use o seguinte comando para remover uma dependência e eliminá-la automaticamente do campo
dependencies
no seupackage.json
.npm uninstall nombre-del-paquete
Remover uma dependência de desenvolvimento:
Use o mesmo comando. O npm removerá a dependência do campo correspondente
devDependencies
caso ela esteja lápackage.json
.npm uninstall nombre-del-paquete --save-dev
Benefícios de gerenciar dependências com o npm
Facilidade de instalação e atualização: simplifica o gerenciamento de dependências por meio de comandos simples.
Controle de versões: permite especificar versões exatas, garantindo que o projeto use as versões corretas dos pacotes.
Redução do tamanho do código: possibilita a reutilização de bibliotecas de terceiros, reduzindo a quantidade de código que você precisa escrever e manter.
Automatização de tarefas: permite automatizar tarefas comuns (como testes ou build do projeto) através de scripts definidos no arquivo
package.json
.
Last updated