Node.js란?
Google chrome V8 javascript engine으로 만들어 진 Javascript runtime이다.
runtime이란?
Programming 언어가 구동되는 환경이다. 기존 Javascript는 Web browser에서만 구동할 수 있었던 언어였다. 이에 다른 언어에 비해 주목을 받지 못했는데 여러 os에서도 구동 가능한 환경을 Node.js가 제공하면서 Web browser에서 벗어나 점점 각광 받게 되었다고 한다.
Node.js를 통해 Browser 밖으로 나온 Javascript는 내 기기 내 file system을 사용할 수 있고 Desktop application과 같은 Web에 제한되지 않은 programming이 가능하게 되었다.
개발 환경을 구성하면서 흔히 사용되는 npm(node package manager)을 통해 설치되는 CRA, Webpack, Babel 등과 같은 CLI는 Node.js 위에서 작동한다. 또한 프레임워크의 도움 없이 직접 개발환경을 구현할 수 있다.
짝수 version, LTS : 안정성과 신뢰도가 높다.
홀수 version : 최신 기능
개발에 맞는 version을 설치하면 된다.
project를 team으로 진행할 시 node의 version을 맞추고 시작하는 경우가 있다. node version이 다를 경우 project에 구성해 놓은 개발 환경 자체에서 충돌이 발생할 가능성이 있어 nvm
으로 node.js version을 처음부터 맞추고 진행한다.
Node.js를 설치하면 Mac 기준 Terminal에서 사용이 가능하다.
> node --version
> npm --version
nvm
> nvm install node
: 최신 version의 node 설치> $ nvm ls-remote
: nvm에서 지원하는 설치 가능한 node version 확인> nvm ls
: 현재 설치된 node version 확인> nvm use v0.0.0
: 사용할 node version 적용> nvm alias default v0.0.0
: node version 고정javascript에서 framework 또는 library를 개발 환경에 적용할 때 npm
을 사용하거나 npm init
을 입력하면 아래 정보를 입력하여 개발 환경을 구성할 수 있다.
package name:
version:
description:
entry point:
test command:
git repository:
keywords:
author:
license:
모두 기본값을 적용할 경우 npm init -y
위 초기 setting이 완료되었다면 적용한 project folder에 package.json 파일이 생성된다. package.json은 설치되어 있는 framework 또는 library, project name, 설명 등 project의 모든 정보를 담고 있다. package.json을 직접 수정도 가능하다.
npm
명령어Reference
https://nodejs.org/ko/
https://jeonghwan-kim.github.io/series/2019/12/09/frontend-dev-env-npm.html
https://perfectacle.github.io/2017/06/18/what-is-node-js/
https://geonlee.tistory.com/92
https://junspapa-itdev.tistory.com/3
https://jeonghwan-kim.github.io/2016/08/10/nvm.html