1. 배경.

자바스크립트라는 장벽이 낮은 언어는 많은 초보 개발자들의 유입을 불러왔고,

여전히 많은 사람들이 즐겨 찾기에 다른언어로 대체될 수 없었습니다.

그래서 이 언어에서 파생되는 기술도 늘어났고- 그것들이 익스프레스(웹)나 노드(서버) 같은 것 입니다.

익스프레스는 루비(언어) 기반 프레임워크 '시나트라'의 영향을 받아 제작되었습니다.

 

2. 익스프레스 시작. https://expressjs.com/ 

express는 node.js의 신속한 웹개발을 위한 프레임워크로써 확장이 유연하여 필요한 기능을 추가할 수 있습니다.

기존의 프레임워크 들과는 다르게 불필요한 기능들이 최소화되어 있습니다.

 

웹사이트, 웹페이지 같은 웹 어플의 프레임워크로써 기능을 할 수 있으며,

단일 페이지 웹 어플을 만들 때에도 적용하기 쉽습니다.

일반적 웹사이트는 사용자의 페이지 이동 마다 네트워크 요청을 보내지만,

단일 페이지 웹어플은 사이트 전체를 클라이언트 브라우저로 내려 받습니다.

때문에 초기 다운로드가 끝나면 서버와 통신이 불필요하기에 페이지 간 빠른 이동이 가능합니다.

다중페이지/ 하이브리드 웹 어플은 전통적 웹사이트 방식으로 단일과 다중 페이지는 융합해서 사용가능한 옵션입니다.

 

3. 노드는 웹서버, 구글엔진사용.

노드는 자바스크립트 언어를 사용하여 구현한 기능으로 서버의 역할을 할 수 있습니다.

익스프레스와 마찬가지로 최소한의 웹서버로 시작하며, 설정옵션이 단순하고 이해가 용이합니다.

단일스레드로 운영되는 노드는 웹어플 만들기가 쉬우며 노드 인스턴스를 늘리면 멀티스레드도 가능합니다.

노드가 사용하는 자바스크립트 엔진인 구글V8이 자바스크립트를 네이티브 기계코드로 컴파일 하지만

워낙 빠르게 컴파일 하기에 인터프리터와 유사해 보입니다. 또한 노드 어플은 플랫폼을 가리지 않습니다.

가볍게 이용가능합니다.

 

4.

노드는 자바스크립트가 브라우저를 벗어나 서버에서 동작하게 해주는 소프트웨어로

익스프레스 처럼 자바스크립트로 작성된 프레임워크를 사용가능하게 해줍니다.

노드와 익스프레스 그리고 몽고DB(데이터베이스)가 한쌍으로 어울립니다.

 

주요관계형 데이터베이스는 mySQL, 마리아DB, PostgreSQL, 오라클, SQL 서버가 있으나,

노드 이용자가 늘어나자 noSQL 데이터 베이스 27

+ Recent posts