JS기반의 서버

Viva의 놀이터·2021년 4월 25일
0
post-thumbnail

JS 기반의 서버

node의 등장

node 등장 이전의 javaScript는 단순히 Browser의 DOM을 조작하는 스크립트 언어로 활용도가 극히 제한되었다. 그러다 2009년 구글의 V8 엔진의 발표 이후 JavaScripts는 큰 변화를 맞게된다.

Ryan Dahl이 브라우져 밖에서도 javaScript를 사용할 수 있는 런타임 Node.js를 만들었다. 이전 브라우저를 동작하는 스크립트언에서 node.js 기반으로 모든 작업을 수행 할 수 있게 된 JavaScript는 급격한 성장을 이룬다.

성장하게된 원인

  1. 개발의 생산성
    브라우저를 다루는 프론트 엔드 언어와 서버를 다루는 백엔드 언어가 동일해짐으로써 이전에 발생하던 프론트엔드 개발자와 백엔드 개발자의 의사소통 비용이 감소되었다. javaScript로 프론트와 백을 모두 만들 수 있는 풀스택 개발자가 되기 쉽다.

  2. JSON의 지원
    node를 사용하면 프론트와 백이 소통하기 위해서 javaScript를 서버에서 사용하는 언어로 번역하는 추가적인 작업이 더이상 필요하지가 않아졌다. 예를들어 자바에서 javaScript 코드를 이해하기 위해서 Json을 해석 할 필요가 없어졌다는 것이다. JSON은 데이터 표준으로 데이터를 처리하는데 사용되는데 javaScript는 기본적으로 JSON을 지원한다. 따라서 java에서 데이터를 처리하여 Json으로 변환하여 디비에 저장하는 과정을 node에서는 바로 디비에 저장이 가능하다.

  3. 비동기 프로그래밍의 순쉬운 사용
    node를 사용하면 비동기 프로그래밍을 async/await를 통해서 손쉽게 사용이 가능하다. 일반적으로 비동기 프로그래밍이 성능이 우수하지만 구현하고 사용하기가 어려웠는데 node를 통해서 쉽게 사용이 가능해졌다.

  4. 개선된 javaScript 명세
    javaScript는 무수히 많은 표기방식이 있었는데 node 등장 이후 javaScript의 표준 사용법이 통일 되어 다양한 브라우저와 호환이 가능하게 되었다. 이전에는 크롬과 익스플로워, 사파리, 파이어폭스에서 사용되는 문법이 달랐는데 ECMAscript 줄여서 ES로 표준화 되었다.

node의 프레임워크

node는 런타임이다. node에게도 java의 스프링과 같은 프레임워크가 존재한다.

  • express

    가장 인기있는 node의 프레임워크이다. express의 특징은 빠르게 api를 만들수있는 높은 생산성이 특징이다.

  • Next

    가장 인기있는 프론트 프레임워크인 React를 기반으로 구축되었고 SSR을 지원한다.

  • koa

    express의 핵심 팀원이 따로 나와서 만든 프레임워크이다.

  • Nuxt

    인기있는 프론트 프레임워크인 vue를 기반으로 구축되었다.

profile
역사를 잊은 기술에겐 미래가 없다

0개의 댓글