자바스크립트를 브라우저가 아닌 어느 곳에서 실행 할 수 있게 해준다.
자바스크립트 실행환경
Javascript's Runtime 이라고 한다.
https://nodejs.org/ko/
따라서, Node.js를 이용하면 브라우저 없이 자바스크립트는 컴퓨터에서 실행 할 수 있다.
brower가 web sevrer에 Request(요청)을 하게 될때, url을 이용해 서버에 요청하게 된다.
이떄, url은 web server의 주소
라고 할 수 있다.
또한, Response(응답)을 받을 때에는 webserver는 (HTML, CSS, Javascript)로 이루어진 웹 사이트를 던져준다고 생각하면 된다.
React는 브라우저에 동작하는 복잡하고 여러가지 기능을 가진 js파일을 쉽게 만들어주는 기능
웹브라우저에 전달해서 프로그램처럼 돌아가게 된다. 이러한 동작들로 인해 react로 만들어진 웹브라우저는 웹어플리케이션
, 또는 React어플리케이션
으로 불리기도 한다.
React는 Node.js기반으로 사용할 수 있는 기능이기 때문에 Node.js가 없이는 사용하기 어렵다.
js파일을 기능별로 구별하여 파일을 관리하는데 각각의 기능을 다른 파일에 불러오는 방법
Node.js에서 기본적으로 제공되는 모듈 시스템 => common jS
- module.exports, require은 Node.js에서만 제공되기 때문에 바닐라js에서는 사용하기 어렵다.
module.exports
를 이용해 module을 만들고 파일 밖으로 내보낼 수 있게 된다.
//계산 기능을 하는 파일
const add = (a,b) => a +b;
const sub = (a,b)=> a-b;
//계산 모듈 객체
module.exports = {
mouduleName : "calc module",
add : add,
sub : sub
}
module.exports로 보낸 파일을 받는 방법
const calc = require('./calc');
console.log(calc.add(1,2));
console.log(calc.add(4,5));
console.log(calc.sub(10,2));
Node Package Manager의 약자
Node.js의 패키지 관리 도구
다른 사람들을 만들어놓은 모듈들을 받을 수 있도록 도와주는 도구
다른사람들이 만들어놓은 모듈이라고 생각하면 좋다.
(로그인 모듈(패키지), 전화인증 모듈(패키지), 메일발송 모듈(패키지) 등)
vscode 터미널에 npm init
을 입력한다.
package name
: 이름 설정
version
: 버전 설정
desccription
: package의 기본 설명
entry point
: package를 시작할때 처음 보이게 될 경로 파일 설정
test command
:
git repository
:
keywords
:
author
: 작성자
license
:
기본 정보를 설정한 후 enter
를 누른다.
입력했던 기본 설정들을 객체 형식으로 다시 보여준다.
내용이 맞다면 yes
또는 enter
를 눌러 진행한다.
기본 설정이 끝나면 자동으로 폴더어 package.json파일
이 생성되어 있다.
package.json파일
에는 설치할때 기본 설정해둔 데이터를 담은 객체들이 들어와 있으며, 수정이 가능하다.
터미널에 npm start
를 입력하면 알아서 잘 호출이 된다.
다른 사람들이 만든 모듈을 모아둔 사이트로 무료로 사용이 가능하다