Instalando e Usando o Gerenciador de Pacotes Yarn no Linux
Yarn é um poderoso gerenciador de pacotes para JavaScript projetado para tornar o gerenciamento de dependências mais simples e eficiente. Originalmente desenvolvido pelo Facebook, tornou-se popular devido à sua velocidade e confiabilidade em comparação com outros gerenciadores de pacotes, como npm (Node Package Manager). Neste artigo, você aprenderá como instalar o Yarn no Linux, como usá-lo e quais são as principais diferenças entre Yarn e npm (incluindo prós e contras).
Instalando o Yarn no Linux
O Yarn pode ser instalado em várias distribuições Linux. Abaixo estão os métodos de instalação comuns.
Método 1: Instalar o Yarn usando APT
Esta é a maneira mais comum de instalar o Yarn em sistemas baseados em Debian.
- Atualize a lista de pacotes:
sudo apt update - Instale as dependências necessárias: Se curl não estiver instalado, instale-o:
sudo apt install curl - Adicione o repositório APT do Yarn:
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/yarn.gpg echo "deb [signed-by=/etc/apt/keyrings/yarn.gpg] https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list - Atualize a lista de pacotes novamente:
sudo apt update - Instale o Yarn:
sudo apt install yarn - Verifique a instalação:
yarn --version
Método 2: Instalar o Yarn usando npm
Se o Node.js e o npm já estiverem instalados, você pode instalar o Yarn via npm:
- Instale o Node.js e o npm (se não estiverem instalados):
sudo apt install nodejs npm - Instale o Yarn globalmente usando npm:
npm install --global yarn
Usando comandos comuns do Yarn
- Inicialize um novo projeto: Vá para o diretório do seu projeto e execute:
yarn initSiga as instruções para criar um arquivo package.json.
- Adicione uma dependência:
yarn add package-name - Adicione uma dependência de desenvolvimento:
yarn add package-name --dev - Remova uma dependência:
yarn remove package-name - Instale todas as dependências: Se você tiver um package.json, instale as dependências com:
yarn install - Atualize uma dependência:
yarn upgrade package-name
Executando scripts
O Yarn também pode executar scripts definidos em package.json:
yarn run script-name
Yarn vs npm: diferenças, prós e contras
Principais diferenças
- Lockfiles:
- Yarn: Usa yarn.lock para travar versões de dependências, ajudando a garantir instalações consistentes em diferentes ambientes.
- npm: Introduziu um mecanismo semelhante no npm 5 com package-lock.json.
- Velocidade de instalação:
- Yarn: Muitas vezes mais rápido devido a instalações paralelas e cache.
- npm: Historicamente mais lento, mas melhorou significativamente em versões mais recentes.
- Comandos CLI:
- Muitos comandos são semelhantes, mas o Yarn inclui comandos exclusivos, como yarn upgrade-interactive para atualizações interativas.
- Workspaces:
- Yarn: Suporta workspaces para gerenciar monorepos.
- npm: Adicionou suporte a workspaces no npm 7.
Yarn: prós e contras
Prós:
- Velocidade: Instalações mais rápidas via cache e paralelismo.
- Instalações determinísticas: Instalações consistentes em diferentes ambientes usando yarn.lock.
- CLI amigável ao usuário: Muitas vezes considerado mais intuitivo com melhor saída.
- Workspaces: Suporte embutido para gerenciamento de monorepos.
Contras:
- Dependência do Node.js: O Node.js deve estar instalado antes de usar o Yarn.
- Curva de aprendizado: Novos usuários podem precisar de tempo para se acostumar com as diferenças em comparação com o npm.
npm: prós e contras
Prós:
- Adoção generalizada: Empacotado com o Node.js, tornando-o comumente usado e bem suportado.
- Ecosistema maduro: Grande comunidade e extensos recursos de resolução de problemas.
- Simplicidade: Familiar para a maioria dos desenvolvedores JavaScript.
Contras:
- Velocidade: Historicamente mais lento que o Yarn, embora atualizações recentes tenham melhorado o desempenho.
- Menos determinístico (historicamente): Antes do npm 5, as instalações podiam variar entre ambientes sem um lockfile.
Conclusão
O Yarn é um poderoso gerenciador de pacotes que oferece recursos voltados para melhorar o fluxo de trabalho de desenvolvimento JavaScript. Graças à sua velocidade, instalações determinísticas e comandos convenientes, tornou-se uma escolha popular entre os desenvolvedores. Embora o npm continue amplamente utilizado e evoluindo, a escolha entre Yarn e npm muitas vezes depende da preferência pessoal ou da equipe. Ao entender os pontos fortes e fracos de ambos, você pode tomar uma decisão mais informada sobre qual gerenciador de pacotes melhor se adapta às necessidades do seu projeto.
