S1_U7_CH3. Node. js

Judevv·2023년 5월 1일
0

Chapter 3. Node.js

학습 목표

  • nvm, Node.js, npm을 설치하고, 버전을 확인할 수 있다.
  • 명령어 node를 이용해 JavaScript 파일을 Node.js - 런타임에서 실행할 수 있다.
  • 과제 시작 전 package.json 파일을 확인하고, npm install을 사용할 수 있다.
  • 프로그래밍 언어가 구동되는 환경, 즉 어떤 프로그램이 동작할 때, 프로그램이 동작하는 곳을 런타임이라고 함

  • 크롬, 사파리와 같은 웹 브라우저가 대표적인 JavaScript 런타임

  • Node.js는 웹 브라우저가 아닌 곳에서도 JavaScript를 실행될 수 있게 하는 프로그램

  • JavaScript를 통해 웹 페이지를 구성하는 것을 넘어 서버를 구축하는 등 활용하게 됨

3-1. nvm & Node.js

Node.js에서 JavaScript를 실행시키기 위해서는, 당연히 Node.js를 설치해야 함

별도의 프로그램으로 설치할 수도 있지만, 패키지 매니저처럼 node.js의 버전을 관리할 수 있도록 nvm(Node Version Manager)으로 Node.js를 설치

nvm을 사용하면 Node.js의 다양한 버전을 쉽게 설치하고, 사용할 수 있음

  • nvm은 Node.js의 다양한 버전을 관리하는 프로그램

  • 윈도우 환경에서는 nvm을 사용할 수 없음!!

1. nvm 설치

아래 명령어를 터미널에 입력

wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
# macOS
brew update
brew install wget

2. 설치 확인

nvm 설치를 마쳤다면, 터미널을 다시 시작

터미널을 다시 시작한 이후, 다음 명령어를 이용하여 nvm 버전을 확인

nvm --version

버전이 잘 나온다면, NVM 설치를 성공

3. Node.js 설치

nvm으로설치하려는 Node.js 버전을 적음

버전은 Node.js 공식 사이트에 LTS라고 적힌 버전을 기준으로 설치

nvm install --lts

성공적으로 Node.js가 설치되었으면 Node.js 버전을 확인

node -v

터미널에 버전 정보가 출력되면, Node.js를 성공적으로 설치

  • LTS(Long-Term Support)는 Node.js에서 지원하는 기간이 길다는 의미

Node.js로 JavaScript파일 실행하기

텍스트 에디터 nano를 이용해 새로운 파일을 생성하고, 다음 코드를 입력

# helloWorld.js라는 이름의 파일을 텍스트 에디터 nano로 엽니다.
nano helloWorld.js
// 이 코드를 생성한 파일에 입력하세요.
function helloWorld () {
  console.log("Hello world!");
}

helloWorld();

Hello world를 출력하는 JavaScript 함수

위 코드를 입력했다면, ^X(Ctrl + x)를 눌러 편집을 종료

터미널 하단에 "Save modified buffer (ANSWERING "No" WILL DESTROY CHANGES) ?"라는 출력이 나타나면, y(Yes)를 누르고 Enter(엔터 키)를 눌러 파일에 변경사항을 저장

명령어를 입력하고 터미널의 출력을 확인하세요. Node.js 환경에서 JavaScript 파일을 실행할 때에는 명령어 node에 실행할 파일의 이름을 입력

# helloWorld.js 파일을 node 환경에서 실행합니다.
node helloWorld.js

3-2. nvm 사용법

nvm은 Node Version Manager

nvm을 통해 간단한 명령어로 Node.js를 설치하고, 다양한 Node.js version을 손쉽게 옮겨 다닐 수 있음

nvm 역시 하나의 프로그램이므로 설치해야 함

nvm 간단 사용법

nvm을 설치하고 아래 명령어를 입력

nvm ls

현재 nvm을 통해 설치한 Node.js version들이 나옴

특정 버전의 Node.js를 설치하고 싶으면 다음과 같이 입력

nvm install 12.18.3

이미 설치된 버전을 삭제하지 않고, 원하는 Node.js version을 설치할 수 있음

사용 중인 Node.js version을 다른 버전으로 변경하고 싶을 때에는 아래의 명령어만 입력

nvm use 버전 넘버  # 예를 들어, nvm use 12.18.3,  nvm use 14.15.5

nvm으로 Node.js의 버전을 관리하면, Node.js를 설치하고 version을 바꾸는 일이 편리

정리하면 nvm은 다양한 Node.js version를 설치하고 관리할 수 있는 프로그램

3-3. npm & Package.json

하나의 프로그램은 다양한 모듈이 합쳐져서 만들어짐

우리가 만든 것을 100% 신뢰하기 어렵기 때문에, 우리보다 잘하는 사람들이 이미 만들어놓은 검증된 코드(모듈)을 가져다가 사용

다른 사람이 만들어놓은 모듈을 node.js에서는 npm 모듈이라는 이름으로 부름

  • 이에 대한 정보를 담아둔 것이 package.json

npm은 node.js 환경에서 외부 라이브러리를 다운로드 하기 위한 대표적인 것(일종의 앱스토어?)

  • 필요한 모듈을 다운로드 할 수 있는, 모듈들이 모여있는 모듈 스토어

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

  • 실제 모듈은 node_modules라는 폴더에 저장(헷갈리지 말 것!)

package.json이 주는 이점은 프로젝트의 코드를 전달할 때, 포함하고 있는 모듈을 다 전달하지 않아도 된다는 점

  • npm install 명령어를 입력하여 모듈을 다운로드
  • package.json 에 적혀있는 내용
    • devDependencies
      • 이 프로젝트를 개발하는 환경에서 필요한 모듈들이 무엇인지가 적혀 있음
      • 예를 들면 코드 모양을 잡아주는 lint나 테스팅 모듈처럼, 실제 프로젝트 동작에 직접적으로 영향을 주지 않는 모듈들을 명시
      • npm install을 이용하면, npm에 있는 모듈을 설치할 수 있는데, 이때 --save-dev 옵션과 함께 설치하면, 자동으로 devDependencies에 추가
    • dependencies
      • devDependencies와는 다르게, 이 프로젝트가 돌아가기 위해 반드시 필요한 모듈들이 무엇인지가 적혀 있음
      • 예를 들어, underscore라든지, 이후 배울 React 같은 것
      • --save 옵션과 함께 설치하면, 자동으로 dependencies에 추가
profile
감성있는 개발자를 꿈꿔요

0개의 댓글