NodeJS의 특징

김민우·2022년 8월 12일
0

TIL

목록 보기
1/10

NodeJS는 Javascript Runtime 플랫폼이다.

📌NodeJS가 Javascript에 비해 좋은 점이 뭘까?

1. Nodejs는 브라우저 없이도 실행이 가능하다.

  • Javascript는 브라우저에서만 실행이 가능했다.
  • 하지만, NodeJS가 나오면서 브라우저를 벗어나 단독으로 실행이 가능해졌다.
  • 이로 인해, Backend 서버의 개발이 가능해졌다.
  • 현재는 서버 개발에서 가장 많이 사용하는 언어 중 하나가 되었다.
  • NodeJS는 서버에서 고성능 IO처리를 위해 만들어졌기 때문에 속도가 빠르다.

2. NodeJS는 Javascript로 만들어졌다.

  • Frontend 개발에서 Javascript를 빼놓을 수 없다.
  • 이제 NodeJS를 사용하면 javascript로 Frontend와 Backend 모두를 개발할 수 있다.
  • 한 가지 언어로 양쪽 개발이 모두 가능한 것은 큰 메리트이다.

3. NodeJS는 NPM 오픈소스를 사용한다.

  • 엄청난 크기의 오픈 소스 생태계를 만들었다.
  • NPM 기반 패키지들을 이용해 빠르게 개발을 할 수 있게 되었ㄷ.
  • 대부분의 패키지들은 무료로 사용가능하다.

- Node.js의 특징은?

  • NodeJS : 구글에서 만든 크롬 브라우저에는 자바스크립트를 실행할 수 있는 V8엔진이 내장되어 있는데, 크롬 내부뿐만 아니라 외부에서도 사용할 수 있도록 별도의 실행 환경을 구축한 것.
    • 자바스크립트를 Backend 에서도 사용할 수 있음
    • 확장 가능한 네트워크 어플리케이션으로 만들어져 있음
    • 비동기 이벤트 드리븐? 루비의 이벤트머신이나 파이썬의 트위스티드가 먼저
      • 웹 프레임워크의 최신 트렌드를 전부 받아들이면서 컴파일러 언어인 자바에 비해서 코딩하기 쉽고, 파이썬이나 루비같은 언어에 비해서 훨씬 더 대중적이며, PHP에 비해서는 그나마 조금 더 잘 만든 언어이자, V8엔진의 등장으로 다른 경쟁 언어에 비해 성능이 빠른 JS를 도입했다는 사실이 Node.JS의 장점 (현실)
        - JS라는 프로그래밍 언어를 쓰기 때문에 인터프리터 기반의 프로그래밍 언어의 특성상 자바나 다른 컴파일러 기반의 언어로 서비스를 구현하는 것에 비해 느릴 수 있지만, JS는 인터프리터 기반의 프로그래밍 언어 중에서 빠른 편에 속하고, 비동기 이벤트 드리븐의 특성을 잘 활용해서 코딩을 하면 굉장히 빠르게 서비스를 구현할 수 있다.

- V8 엔진을 쓰는 이유?

  • 오픈소스가 ECMAScript 규격의 C++로 작성되어있다
  • 클라이언트(Chrome)와 서버(Node.js)측 애플리케이션을 모두 사용한다
  • 인라인 캐싱(inline caching)과 같은 최적화 기법을 적용하였다.
  • V8은 자바스크립트를 바이트코드(bytecode)로 컴파일하고 실행하는 방식을 사용한다.(JIT 컴파일)

https://ko.wikipedia.org/wiki/V8_(%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8_%EC%97%94%EC%A7%84)

profile
Pay it forward.

0개의 댓글