Capítulo 14: Gerenciador de Pacotes NPM 📦🔴
Neste capítulo, vamos aprender a usar o NPM (Node Package Manager) para instalar bibliotecas feitas por outras pessoas e usá-las no nosso projeto, com o tema Pokémon!
📖 O que é o NPM?
O NPM é o maior registro de software do mundo! Ele vem instalado junto com o Node.js e serve para baixar pacotes (bibliotecas) que resolvem problemas comuns, como formatar datas, criar servidores ou gerar cores no terminal.
É como capturar um Pokémon com habilidades especiais para o seu time!
📖 Exemplo Guiado: Usando um Pacote Externo
Vamos usar o pacote colors para deixar as mensagens do nosso terminal coloridas!
- Abra o terminal na pasta do seu projeto e digite:
npm init -y(Isso cria o arquivo package.json, que guarda a lista de pacotes do seu projeto).
- Agora instale o pacote
colors:
npm install colors- Crie o arquivo
pokemon_colorido.jsna pastasrc/:
// Importando o pacote instalado
const colors = require('colors');
console.log("--- Batalha Pokemon ---".rainbow);
console.log("Charmander usou Lança-Chamas!".red);
console.log("Squirtle usou Jato de Água!".blue);
console.log("Bulbasaur usou Folha Navalha!".green);🕹️ Como Executar e Testar no VS Code
- Abra o terminal integrado.
- Execute:
node pokemon_colorido.js - As mensagens aparecerão coloridas no terminal!
📊 Ilustração Visual: Fluxo do NPM
Veja como o pacote chega até você:
graph LR A[Nuvem do NPM] -->|npm install| B[Pasta node_modules] B -->|require| C[Seu Código JS]
🛠️ Prática Obrigatória 1: Pokémons Aleatórios
Instale o pacote chamado pokemon (se ele existir e for simples) ou use o pacote lodash (muito famoso) para pegar um item aleatório de uma lista. Crie um programa chamado sorteio_pokemon.js que use a função _.sample() do Lodash para sortear um Pokémon de uma lista!
Instalação: npm install lodash
🔑 Gabarito de Código
Prática 1: sorteio_pokemon.js
const _ = require('lodash');
const meusPokemons = ["Pikachu", "Charizard", "Mewtwo", "Lucario"];
// Sorteia um item do array
const sorteado = _.sample(meusPokemons);
console.log(`Eu escolho voce: ${sorteado}!`);📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)
(Siga o padrão estabelecido no Guia)