"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > O que é Nodejs

O que é Nodejs

Publicado em 01/08/2024
Navegar:997

What is Nodejs

Nodejs é um tempo de execução JavaScript. Isso significa que nodejs é um programa que permite executar JavaScript fora do navegador. Como resultado, é possível desenvolver aplicativos backend usando nodejs. Agora, isso não se limita ao back-end. Podemos construir aplicativos de desktop, IoTs e aplicativos em nuvem, para citar alguns. Nodejs é multiplataforma. O próprio programa roda Linux, Windows e macOS.

Por que alguém deveria usar Nodejs

Nodejs vem com algumas vantagens e estas incluem, mas não estão limitadas a:

  • E/S sem bloqueio
  • Assíncrono
  • Escalável
  • Condução de eventos
  • tem baixa latência
  • tem segmentação
  • pode ser usado em qualquer lugar, em qualquer lugar
  • ter uma grande comunidade

Como diz o ditado, retornos imediatos significam inconvenientes de longo prazo. A desvantagem aqui é o javascript (a propósito, adoro javascript) e, às vezes, não projetar o sistema que você deseja construir com o dimensionamento em mente. Novamente, não é o Nodejs, mas as ferramentas e os humanos que usam o Nodejs.

Você pode ler mais sobre nodejs aqui

Instalação

As pessoas no Nodejs são inteligentes, respeite isso. Eles tornaram a instalação mais fácil para você e para mim. Pessoas sem conhecimento técnico podem configurar o Nodejs e começar a escrever algum código. Eles forneceram opções onde se pode usar:

  • um gerenciador de pacotes
  • um instalador pré-construído
  • um binário pré-construído
  • e instalação construindo o código-fonte

Entre estes, os três primeiros são amigáveis. Então escolha qualquer um deles. Vamos para download-nodejs e “deixar lá um nodejs”.

A partir deste momento, a versão atual do nó é 22 e LTS (tem suporte de longo prazo) é 20.

Estou em uma máquina Linux, então irei com a instalação com nvm (gerenciador de versão do Node). Isso nos dá a sensação de que podemos ter várias versões de nodejs. Isso também funcionará imediatamente para macOS.

# installs nvm (Node Version Manager)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

# download and install Node.js (you may need to restart the terminal)
nvm install 20

# verifies the right Node.js version is in the environment
node -v # should print `v20.15.1`

# verifies the right npm version is in the environment
npm -v # should print `10.7.0`

Este é o mesmo script na plataforma nodejs (site). Portanto, não deverá haver problemas ao executar esses comandos.

Para Windows, algo semelhante será

# installs fnm (Fast Node Manager)
winget install Schniz.fnm

# download and install Node.js
fnm use --install-if-missing 20

# verifies the right Node.js version is in the environment
node -v # should print `v20.15.1`

# verifies the right npm version is in the environment
npm -v # should print `10.7.0`

Ou apenas baixe a instalação pré-construída, node-prebuilt-installer. No final do dia, você poderá executar os dois últimos comandos para verificar suas instalações.

# verifies the right Node.js version is in the environment
node -v # should print `v20.15.1`

# verifies the right npm version is in the environment
npm -v # should print `10.7.0`

NVM

nvm não foi uma opção para o windows durante a instalação, mas pode ser instalado aqui, e saber um pouco sobre ele será educativo.

Listamos todas as outras versões de nodejs que temos, usando o comando nvm list

username@computer-name:~$ nvm list
->     v18.18.0
default -> 18.18.0 (-> v18.18.0)
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v18.18.0) (default)
stable -> 18.18 (-> v18.18.0) (default)
lts/* -> lts/hydrogen (-> v18.18.0)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.12 (-> N/A)
lts/fermium -> v14.21.3 (-> N/A)
lts/gallium -> v16.20.2 (-> N/A)
lts/hydrogen -> v18.18.0

Pelo exposto, podemos dizer que v18.18.0 é o nodejs que estou executando.

Podemos instalar alguma outra versão como a 20 LTS, usando nvm install 20

username@computer-name:~$ nvm install 20
Downloading and installing node v20.15.1...
Downloading https://nodejs.org/dist/v20.15.1/node-v20.15.1-linux-x64.tar.xz...
######################################################################### 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v20.15.1 (npm v10.7.0)

Isso mudou automaticamente para v20.15.1. Qual é o LTS mais recente.

Agora posso mudar para a versão do nó desejada, nvm use 18

username@computer-name:~$ nvm use 18
Now using node v18.18.0 (npm v10.8.2)
username@computer-name:~$
username@computer-name:~$ node -v
v18.18.0

E será isso no nvm

NPM

npm é um gerenciador de pacotes de nós. Se você está se perguntando o que é um pacote, não se estresse. Um pacote é o mesmo que uma biblioteca. Alguns trechos de código ou programas escritos por outra pessoa podem ser usados ​​em nosso programa para fazer algo. Portanto, um pacote serve para resolver um problema e tudo mais. npm e outros gerenciadores de pacotes de nós como yarn, pnpm, bun e outros nos ajudam a gerenciar os pacotes que instalamos para nosso projeto. Vamos nos concentrar exclusivamente no npm aqui.

Para iniciar um projeto nodejs (não apenas javascript), precisamos usar pacotes node. Quer dizer, há momentos em que desenvolvemos um programa inteiro sem depender de bibliotecas de terceiros (programas que não escrevemos nem vieram com o Nodejs).

Podemos criar um aplicativo nodejs criando um arquivo node packege.json com o comando npm init. Faça npm init --help para ler mais sobre o npm init. Geralmente é melhor iniciar um programa de nó em um ambiente novo (pasta). Então, vamos criar um e chamá-lo de helloworld. Vou usar o terminal.

username@computer-name:~$ mkdir helloworld
username@computer-name:~$ cd helloworld/
username@computer-name:~/helloworld$ npm init
This utility will walk you through creating a package.json file.
It only covers the most common items and tries to guess sensible defaults.

See `npm help init` for definitive documentation on these fields
and exactly what they do.

Use `npm install ` afterwards to install a package and
save it as a dependency in the package.json file.

Press ^C at any time to quit.
package name: (helloworld) 
version: (1.0.0) 
description: 
entry point: (index.js) 
test command: 
git repository: 
keywords: 
author: 
license: (ISC) 
About to write to /home/username/helloworld/package.json:

{
  "name": "helloworld",
  "version": "1.0.0",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
 },
  "author": "",
  "license": "ISC",
  "description": ""
}

Is this OK? (yes) 

username@computer-name:~/helloworld$ 
  • Eu criei uma pasta chamada mkdir helloworld
  • Mudei para a pasta helloworld, cd helloworld
  • Eu então inicializo o nó, npm init

Será como um assistente de instalação, orientando você nas etapas de configuração. Observe que você pode atualizá-lo mais tarde. Basta pressionar ENTER, ENTER até que todo o processo termine. Ao abrir a pasta helloworld em um explorador de arquivos, você verá um novo arquivo, package.json com conteúdo semelhante ao resultado acima.

{
  "name": "helloworld",
  "version": "1.0.0",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
 },
  "author": "",
  "license": "ISC",
  "description": ""
}

Essa configuração é intuitiva. Diz o nome do projeto (ou programa) que estamos prestes a criar. Ele usa o nome da pasta pai como nome do projeto. Durante o processo de inicialização do nó (projeto), poderíamos ter dado um nome a ele e até fornecido valores para os demais campos. É aqui que pressionamos ENTER, ENTER,…

Outra maneira de fazer isso sem pressionar ENTER, ENTER,…, é fazer npm init -y . -y, quer dizer, sim, use os valores padrão.

Principalmente, os pacotes de nós estão em npmjs.com. Digamos que queremos instalar a biblioteca expressjs. É assim que se pesquisa express no npmjs. Os documentos explicarão como instalá-lo usando o comando npm i express.

username@computer-name:~/helloworld$ npm i express

added 64 packages, and audited 65 packages in 4s

12 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities

i significa instalar. Você escreve como npm install express. O package.json será atualizado com o pacote adicionado.

{
  "name": "helloworld",
  "version": "1.0.0",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
 },
  "author": "",
  "license": "ISC",
  "description": "",
  "dependencies": {
    "express": "^4.19.2"
 }
}

Agora, temos uma nova dependência.

Observe que nenhum arquivo ou pasta será criado. Quando fazemos ls

username@computer-name:~/helloworld$ ls
node_modules  package.json  package-lock.json
  • Temos node_modules, que é uma pasta que contém as dependências (pacotes) que nosso programa usará.
  • Também temos package-lock.json, que serve como um arquivo de bloqueio, daí o nome. Ele captura as versões exatas do pacote que instalamos e usamos para criar nossos programas. Dessa forma, os mesmos pacotes e suas versões específicas podem ser usados ​​o tempo todo, pois diferentes versões do mesmo pacote podem se comportar de maneira diferente.

De qualquer forma, podemos instalar pacotes de três maneiras ou melhor, ambiente. É basicamente aqui que você deseja que o pacote seja usado.

  • global: estará acessível a todos os programas de nó que você possui. Normalmente, instale pacotes globalmente quando forem programas de uso geral, como utilitários de linha de comando.
  • desenvolvimento: destina-se apenas ao desenvolvimento e não é usado em alguns servidores remotos, pois o servidor remoto terá sua maneira de lidar com o caso de uso dessa dependência. Geralmente são bibliotecas utilitárias que funcionam com outras bibliotecas para atingir um propósito. Estes podem incluir, mas não estão limitados a, eslint, mais bonito, dotenv, etc.
  • produção: Este é um pacote do qual nosso aplicativo depende principalmente para funcionar. Como expresso.

Nós podemos fazer,

  • npm i -g package-names ... para instalar globalmente um pacote
  • npm i --global package-names ... para instalar globalmente um pacote
  • npm i -S package-names ... para instalar um pacote (para produção)
  • npm i --save package-names ... para instalar um pacote (para produção)
  • npm i -D package-names ... para instalar um pacote (para desenvolvimento, você não precisará dele para executar nosso aplicativo)
  • npm i --save-dev package-names ... para instalar um pacote (para desenvolvimento, você não precisará dele para executar nosso aplicativo)
  • npm desinstalar nomes de pacotes ... para remover ou desinstalar pacotes

Essencialmente, isso é tudo que precisaremos para gerenciar nossos pacotes.

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/otumianempire/what-is-nodejs-4h10?1 Se houver alguma violação, entre em contato com [email protected] para excluí-la
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3