본문 바로가기
Backend/Node.js

[Node.js] Node.js에 대하여

by hyeok1235 2024. 1. 3.

Node.js

“Node.js is an open-source, cross-platform JavaScript runtime environment.”

 

Node.js는 브라우저에서만 실행할 수 있었던 자바스크립트를 컴퓨터(Server-Side)에서 실행할 수 있게 하는 환경입니다.

 

Node.js의 기본 패키지 관리자는 npm입니다 (python-pip과 같은 관계). 상황에 따라서 yarn이나 pnpm과 같은 패키지 매니저를 사용할 수도 있습니다.

 

Node.js 설치 방법

Windows/Mac의 경우:

https://nodejs.org/en/download/ 에서 설치파일 다운로드

 

리눅스의 경우:

curl -sL <https://deb.nodesource.com/setup_>.x | sudo bash -
sudo apt install -y nodejs

 

Node.js 장점

Nodes.js의 장점 중 하나는 자바스크립트를 기반으로 하는 개발환경이기 때문에 자바스크립트의 대중성과 성능을 활용할 수 있다는 것입니다. 그리고 프론트엔드와 백엔드에서 같은 언어를 활용할 수 있기 때문에 개발이 쉬워집니다.

 

또 다른 장점은 Node.js가 비동기 I/O 구조 기반이라는 것입니다. 프로그램이 코드의 순서와 상관없이 실행되기 때문에 다른 작업들 때문에 실행이 지연되거나 막히는 문제를 해결할 수 있습니다.

 

npm을 통해서 여러가지 오픈소스 패키지를 활용할 수 있기 때문에 편하게 개발을 할 수 있습니다.

 

Node.js 단점

자바스크립트는 동적 타입 언어이기 때문에 안정성이 떨어집니다. Node.js도 이 문제를 그대로 가지게 되는데, TypeScript를 사용함으로써 어느정도 해결할 수 있습니다.

 

Node.js는 싱글 스레드이기 때문에 CPU 연산을 많이 요구하는 대규모 데이터 처리에는 불리합니다. 즉, Node.js는 크기는 작지만 개수가 많은 데이터를 처리하는 것에 더 적합합니다.

 

npm의 다양한 패키지들은 서로 의존도가 높아서 많은 패키지들이 얽혀있다 보면 보안에 취약해질 수도 있습니다.

728x90
반응형