Nodejs는 JavaScript 런타임입니다. 즉, nodejs는 브라우저 외부에서 JavaScript를 실행할 수 있게 해주는 프로그램입니다. 결과적으로 nodejs를 사용하여 백엔드 애플리케이션을 개발할 수 있습니다. 이제 이는 백엔드에만 국한되지 않습니다. 몇 가지 언급하자면 데스크톱 애플리케이션, IoT, 클라우드 애플리케이션을 구축할 수 있습니다. Nodejs는 크로스 플랫폼입니다. 프로그램 자체는 Linux, Windows 및 macOS를 실행합니다.
Nodejs에는 몇 가지 장점이 있으며 여기에는 다음이 포함되지만 이에 국한되지는 않습니다.
속담처럼 즉각적인 반품은 장기적인 불편을 의미합니다. 여기서 단점은 javascript(그런데 저는 javascript를 좋아합니다)이며 때로는 확장을 염두에 두고 구축하려는 시스템을 설계하지 않는다는 것입니다. 다시 말하지만, Nodejs를 사용하는 것은 Nodejs가 아니라 도구와 인간입니다.
여기에서 nodejs에 대해 자세히 알아볼 수 있습니다.
Nodejs의 사람들은 똑똑합니다. 존경합니다. 그들은 당신과 나를 위해 설치를 더 쉽게 만들었습니다. 기술적인 지식이 없는 사람도 Nodejs를 설정하고 코드 작성을 시작할 수 있습니다. 그들은 다음을 사용할 수 있는 옵션을 제공했습니다:
이 중 처음 3명은 친근하다. 그러니 그중 하나를 선택하십시오. download-nodejs로 가서 "nodejs를 두세요".
현재 현재 노드 버전은 22이고 LTS(장기 지원)는 20입니다.
저는 Linux 머신을 사용하고 있으므로 nvm(노드 버전 관리자)을 사용하여 설치하겠습니다. 이는 우리가 여러 버전의 nodejs를 가질 수 있다는 느낌을 줍니다. 이는 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`
이것은 nodejs 플랫폼(웹사이트)의 동일한 스크립트입니다. 따라서 이러한 명령을 실행할 때 아무런 문제가 없어야 합니다.
창의 경우 비슷한 것이 있습니다.
# 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`
또는 사전 빌드된 설치인 node-prebuild-installer를 다운로드하세요. 결국 마지막 두 명령을 실행하여 설치를 확인할 수 있습니다.
# 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은 설치 중 Windows에 대한 옵션이 아니었지만 여기에 설치할 수 있으며 이에 대해 조금 알아두면 도움이 될 것입니다.
nvm list 명령을 사용하여 우리가 가지고 있는 다른 모든 nodejs 버전을 나열합니다.
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
위에서 v18.18.0이 제가 실행 중인 nodejs임을 알 수 있습니다.
nvm install 20을 사용하여 20 LTS와 같은 다른 버전을 설치할 수 있습니다.
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)
이 자동으로 v20.15.1로 전환되었습니다. 최신 LTS입니다.
이제 nvm에서 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
nvm에서도 가능합니다
npm은 노드 패키지 관리자입니다. 패키지가 무엇인지 궁금하시다면 스트레스 받지 마세요. 패키지는 라이브러리와 동일합니다. 다른 사람이 작성한 일부 코드 조각이나 프로그램은 우리 프로그램에서 어떤 작업을 수행하는 데 사용될 수 있습니다. 따라서 패키지는 문제 등을 해결하기 위한 것입니다. npm 및 Yarn, pnpm, bun 등과 같은 기타 노드 패키지 관리자는 프로젝트를 위해 설치하는 패키지를 관리하는 데 도움이 됩니다. 여기서는 npm에만 집중하겠습니다.
nodejs 프로젝트(Javascript뿐만 아니라)를 시작하려면 노드 패키지를 사용해야 합니다. 즉, 타사 라이브러리(우리가 작성하지 않았거나 Nodejs와 함께 제공되지 않은 프로그램)에 의존하지 않고 전체 프로그램을 개발할 때가 있습니다.
npm init 명령을 사용하여 node packege.json 파일을 생성하여 nodejs 애플리케이션을 생성할 수 있습니다. npm init에 대해 자세히 알아보려면 npm init --help를 수행하세요. 일반적으로 새로운 환경(폴더)에서 노드 프로그램을 시작하는 것이 좋습니다. 그래서 우리는 하나를 만들고 그것을 helloworld라고 부를 것입니다. 터미널을 이용하겠습니다.
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$
설치 마법사처럼 구성 단계를 안내합니다. 나중에 업데이트할 수 있습니다. 전체 프로세스가 끝날 때까지 ENTER, ENTER를 누르기만 하면 됩니다. 파일 탐색기에서 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": "" }
이 구성은 직관적입니다. 우리가 만들려는 프로젝트(또는 프로그램)의 이름을 알려줍니다. 상위 폴더 이름을 프로젝트 이름으로 사용합니다. 노드(프로젝트) 초기화 프로세스 중에 이름을 지정하고 다른 필드에 값을 제공할 수도 있었습니다. 여기서 ENTER, ENTER, …
를 쳤습니다.ENTER, ENTER, …를 누르지 않고 이를 실행하는 또 다른 방법은 npm init -y 입니다. -y는 예, 기본값을 사용한다는 뜻입니다.
주로 노드 패키지는 npmjs.com에 있습니다. expressjs 라이브러리를 설치한다고 가정해 보겠습니다. npmjs에서 express를 검색하는 방법입니다. 문서에는 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는 설치를 의미합니다. npm install express로 작성합니다. package.json은 패키지가 추가되어 업데이트됩니다.
{ "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" } }
이제 새로운 종속성이 생겼습니다.
파일이나 폴더가 생성되지 않습니다. ls
를 할 때
username@computer-name:~/helloworld$ ls node_modules package.json package-lock.json
어쨌든 우리는 세 가지 방법 또는 오히려 환경에서 패키지를 설치할 수 있습니다. 기본적으로 패키지를 사용하려는 위치입니다.
우리는 할 수 있어요,
기본적으로 이것이 패키지를 관리하는 데 필요한 전부입니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3