본문 바로가기
⚙️Backend/Node.js

1. Intro

by Bㅐ추 2020. 11. 28.
728x90
반응형

Node.js 란?

Node.js는 Chrome V8 Javascript 엔진으로 빌드된 Javascript 런타임 이다.
보통 노드는 서버로 이용된다. 하지만, Node에 대한 설명글을 보면 서버에 대한 얘기는 없다.
이는 노드가 서버만 실행할 수 있는 것이 아니기 때문이다.

서버로서의 Node.js

노드를 통해 서버 애플리케이션을 실행할 수 있다. 이때 서버란, 네트워크를 통해 클라이언트에 정보나 서비스를 제공하는 컴퓨터 혹은 프로그램을 말한다.
노드는 자바스크립트 프로그램이 서버로서 기능하기 위한 도구를 제공하므로 서버 역할을 수행할 수 있다.

자바스크립트 런타임

노드는 자바스크립트 런타임이다. 런타임은 특정 언어로 만든 프로그램들을 실행할 수 있는 환경을 뜻한다.
따라서 노드는 자바스크립트 프로그램을 컴퓨터에서 실행할 수 있다. == 노드는 자바스크립트 실행기라고 봐도 무방하다.

기존에는 자바스크립트를 웹 브라우저 위에서만 실행할 수 있었다. 이는 브라우저가 자바스크립트 런타임을 내장하고 있어서
가능했다. 하지만 브라우저 밖에서는 동작하지 못했다. 이 단점을 노드가 해결해준 것.

이벤트 기반

이벤트 기반이란, 이벤트가 발생할 때 미리 지정해둔 작업을 수행하는 방식을 의미한다.
이벤트로는 클릭이나 네트워크 요청등이 있을 수 있다.

이벤트 기반 시스템에는 특정 이벤트가 발생할 때 무엇을 할 지 미리 등록해두어야 한다.
이를 이벤트 리스너에 콜백함수를 등록한다고 표현한다.

예를들어, 버튼을 클릭할 때 경고창을 띄우도록 설정하는 것을 구현하고자 한다면, 클릭 이벤트 리스너에 경고창을 띄우는 콜백함수를
등록해두면 클릭 이벤트가 발생할 때 마다 콜백 함수가 실행되어 경고창이 뜨게 된다.

728x90
반응형

'⚙️Backend > Node.js' 카테고리의 다른 글

0. 설치  (0) 2020.11.27
[Node.js] Node.js 및 채팅기능 ( socket.io )  (1) 2020.06.23
[Node.js] oracle db 연동  (0) 2020.06.01