[Node.js]

Sehyeon Park·2022년 5월 10일
0

런타임이란 프로그래밍 언어가 구동되는 환경입니다.

런타임 이란 어떤 프로그램이 동작할 때, 프로그램이 동작하는 곳입니다. 우리가 JavaScript를 이용해서 코드를 적었으면 코드가 실행됩니다. 이때, 실행되는 곳이 바로 런타임입니다.
크롬, 사파리 같은 웹 브라우저가 바로 JavaScript 런타임입니다.

node.js 런타임 등장으로 js코드를 브라우저와 node.js 환경모두 실행가능하게 된다.

정리하면 런타임이란, 프로그래밍 언어가 실행되는 환경, 그리고 node.js는 JavaScript 런타임입니다.

nvm & node.js

node.js : js가 돌아가는 환경

1.nvm 설치

아래 명령어를 터미널에 입력합니다.

1 wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | bash

[커맨드] wget 명령어로 nvm 설치를 시도합니다.

만일 Command 'wget' not found 메세지와 함께 설치가 진행되지 않는 경우, Package Manager를 이용해 wget을 설치하세요.

// Ubuntu
sudo apt update
sudo apt install wget
// macOS
brew update
brew install wget

2. 설치 확인

[그림] nvm 설치를 마쳤다면, 터미널을 다시 시작해야 합니다.

nvm을 성공적으로 설치했다면, 위와 같은 화면이 나옵니다.
하지만, 바로 nvm 명령을 실행하면 작동하지 않죠.
항상 터미널의 출력에 답이 있습니다. 터미널을 닫고, 새로 열면 명령어 nvm을 사용할 수 있습니다.

1 nvm --version

[커맨드] nvm 패키지의 버전을 확인합니다.
버전이 잘 나온다면, NVM 설치를 성공하였습니다.

3. node.js 설치

nvm은 node.js의 다양한 버전을 쉽게 설치할 수 있습니다. nvm을 설치했으니, nvm을 이용해 node.js를 설치합니다. nvm으로 node.js를 설치하는 방법은 간단합니다. 아래 명령어처럼 설치하려는 node 버전을 적어주면 됩니다.

버전은 node.js 공식 사이트에 LTS라고 적힌 버전을 기준으로 설치하면 됩니다.

1 nvm install --lts

[커맨드] nvm 으로 lts 버전의 node.js를 설치합니다.

1 node -v

[커맨드] node의 버전을 확인합니다.
터미널에 버전 정보가 출력되면, node를 성공적으로 설치했습니다.

* LTS(Long-Term Support)는 node.js에서 지원하는 기간이 길다는 의미입니다.

애플 실리콘(M1) Mac 사용 시 주의사항

2020년 말에 발표된 M1 칩을 이용하는 Mac을 사용하고 있는 경우, 15 버전 이상의 node.js를 사용하십시오. 15 버전 미만의 버전을 사용할 경우, 제대로 설치되지 않을 수 있습니다.

1 nvm install 15


npm & package.json

남이 만들어놓은 모듈을 node.js 에서는 npm 모듈이라는 이름으로 부르며, 이에 대한 정보를 담아둔 곳이 바로 package.json입니다.

그럼 다른 사람에게 이 프로젝트에 대해 알려주어야 하겠죠?! 그 역할을 하는 것이 바로 package.json 입니다.

package.json에는 이 프로그램을 실행시키기 위해 필요한 모듈들이 무엇인지, 프로그램을 실행시키는 방법, 프로그램을 테스트하는 방법 등이 명시되어 있습니다.

헷갈리면 안 되는 점은 이 프로그램을 실행시키기 위해 필요한 실제 모듈은 따로 node_modules이라는 폴더에 저장된다는 것입니다. package.json에는 어떤 모듈인지만 적혀 있습니다.

즉, 전자제품을 보러 갔을 때 제품 카탈로그가 바로 package.json이라 생각할 수 있습니다. 카탈로그만 보면 어떤 제품이 있는지 파악할 수 있는 것처럼 package.json만 보면 어떤 모듈이 들어가 있는지를 알 수 있습니다.

$ npm install

npm install 명령어를 입력하시면, package.json에서 필요하다고 하는 모듈을 다운로드합니다. npm install이 완료되면 node_modules 디렉토리가 생긴 걸 확인하실 수 있습니다.

devDependecies

프로그램 실행과 관계없는 오로지 개발을 위해 필요한 dependency(의존성모듈)

dependencies

dependencies는 devDependencies와는 다르게, 이 프로젝트가 돌아가기 위해 반드시 필요한 모듈들이 무엇인지가 적혀 있습니다.

--save 옵션과 함께 설치하면, 자동으로 dependencies에 추가됩니다.
--save 옵션은 생략해도 좋습니다.

profile
후회하지 않는 개발자가 되자!

0개의 댓글