Aprende a instalar o JavaScript localmente para resolveres os exercícios do Exercism na tua própria máquina
Este percurso baseia-se no Node.js para disponibilizar um ambiente de execução para JavaScript. Isto significa que assumimos que toda a execução de JavaScript no teu computador vai acontecer através do Node.js.
Muitas máquinas vêm já com o Node.js pré-instalado, ou ele pode ter sido instalado anteriormente, ou como dependência. Por isso, antes de fazermos seja o que for, convém verificar se já está instalado:
Terminal, cmd, Powershell, bash, ...)node -vSe o Node.js estiver instalado, é mostrada uma versão.
Anota essa versão.
Se o Node.js não estiver instalado, é apresentado um erro.
Normalmente, algo do género de 'node' is not recognised.
Vai ao site do Node.js.
Vão ser apresentadas duas versões (se o site detetar o teu sistema operativo; caso contrário, seleciona primeiro o teu sistema operativo).
Se a versão que obtiveste com o node -v corresponder a uma delas, está tudo bem.
Se não corresponder, recomendamos que uses o Node.js LTS.
Se receias que a atualização possa estragar algo no teu sistema, podes continuar como se estivesse tudo bem;
podemos não conseguir dar apoio se acontecer algo inesperado.
Há algumas formas de instalar o Node.js:
Ambas as opções funcionam em Windows, macOS e Linux. Se não sabes o que fazer, usar um instalador é o mais fácil.
Depois de o instalador terminar, de o gestor de pacotes concluir, ou de o binário ter sido copiado e as instruções terem sido seguidas, é boa ideia testar se está tudo bem.
Terminal, cmd, Powershell, bash, ...)node -vA versão deve corresponder à que aparece no site.
[!NOTE] É importante abrir uma janela de terminal nova. As janelas de terminal já abertas podem não ter sido atualizadas depois de a instalação terminar. Isto significa que esses terminais não sabem que foi instalado um novo programa.
[!IMPORTANT] > Ajuda:
'node' is not recognisedSe usaste o instalador oficial, o teu
PATHjá devia ter sido configurado automaticamente, mas se a tua shell tiver dificuldade em localizar os módulos instalados globalmente, ou se compilares o Node.js a partir do código-fonte, atualiza o teuPATHpara incluir os binários donpm.No macOS e no Linux podes fazê-lo adicionando o seguinte a
~/.bash_profileou a~/.zshrc:export PATH=/usr/local/share/npm/bin:$PATHNo Windows, abre o menu Iniciar e procura por "environment variables". Vais ter de editar a entrada
PATHe adicionar aqui o caminho para os binários donpm. Normalmente, encontram-se emC:\Program Files\nodejs. Se navegares até aqui com oFile Explorer, deves encontrarnode.exe,npm.batenpx.bat.Fecha todos os terminais abertos e abre um novo.
Para usar um gestor de pacotes versionado e compatível com este percurso, é preciso ativar o corepack uma vez:
corepack enable pnpm
Segue estas instruções para descarregar a CLI do Exercism para o teu sistema operativo.
Depois de a CLI estar instalada e configurada, descarrega o primeiro exercício, o hello-world:
exercism download --exercise=hello-world --track=javascript
Cada exercício precisa depois de algumas ferramentas para correr os testes. Podes instalá-las executando este comando dentro do diretório de cada exercício:
corepack pnpm install
Como este percurso passou a usar o pnpm, não precisas de te preocupar com o espaço em disco. Dá uma vista de olhos ao pnpm, que garante que só é instalada uma cópia de cada versão de pacote no disco.
Mas o que é o corepack e porque é que isto funciona?
Não precisas desta informação para concluir o percurso de JavaScript, mas se estás curioso por perceber o que acabou de acontecer, os parágrafos seguintes são para ti:
Isto funciona porque o
corepacké uma ferramenta que vem incluída no Node.js, que foi instalado segundo os passos acima. Pode instalar o gestor de pacotespnpm. Configura o sistema O comandocorepackprocura um ficheiropackage.json, que existe em cada pasta de exercício. Depois verifica opackageManager, que corresponde apnpm, por isso pode continuar. Se for preciso, atualiza primeiro opnpm. Este ficheiro também lista as"dependencies"acima, que são depois descarregadas pelopnpme colocadas numa cache local.Os scripts no
package.jsonusam os binários da cache local, e são esses scripts que servem para correr os testes, como indicado na descrição doexercise.