nodejs 는
chrome v8 javascrpit엔진으로 빌드된 javascript런타임이다.
( "자바스크립트 런타임"이란 "자바스크립트 코드를 실행하는 환경"을 말한다.
자바스크립트는 일반적으로 브라우저에서 실행된다.
다른 환경에서도 실행될 수 있지만 이를 위해서는 자바스크립트 엔진을 다른 프로그램에 내장하여 자바스크립트 코드를 실행할 수 있는 환경을 만들어야한다. 자바스크립트 엔진과 함께 필요한 라이브러리, 모듈, api 등을 포함하는 것이 자바스크립트 런타임이다.
)
브라우저에서 실행되는 자바스크립트와 달리 nodejs 는 파일 시스템,네트워크 등과 같은
서버 사이드 기능을 제공하여, 서버 사이드 웹 개발을 위한 환경을 제공한다.
이를 통해 *비동기식 I/O, 이벤트 기반 처리 모델 등을 활용해 높은 성능의 웹 애플리케이션을 만들 수 있다.
또한 노드js는 npm이라는 패키지 매니저를 제공한다. node package manager
이를 통해 라이브러리, 모듀르 프레임워크 등의 다양한 패키지를 쉽게 설치하고 관리할 수 있다.
(I/O(Input/Output)는 컴퓨터에서 데이터를 읽고 쓰는 작업을 말합니다. 이때, 데이터를 읽고 쓰는 과정에서 CPU는 다른 작업을 수행할 수 없는 차단(blocking) 상태에 빠지게 됩니다. 이러한 문제를 해결하기 위해 비동기식 I/O(Asynchronous I/O)가 등장했습니다.)
+
express는
노드Js를 위한 웹 프레임워크이다. 간결하고 유연한 구조를 가지고 있는 것이 특징
노드js의 http 모듈을 기반으로하며,
http 요청
라우팅 및 미들웨어 처리를 쉽게 할 수 있도록 한다.
다음과 같은 기능을 제공한다.
- 라우팅: HTTP 요청의 URL을 해당하는 처리기(콜백 함수)에 매핑합니다. 이를 통해 사용자는 특정 URL에 대한 요청에 대한 적절한 응답을 반환할 수 있습니다.
- 미들웨어: 요청을 처리하기 전에 실행되는 작업을 구성할 수 있습니다. 예를 들어 요청 헤더의 유효성을 검사하거나 로깅을 수행하는 등의 작업을 수행할 수 있습니다. 또한 미들웨어를 사용하여 사용자 정의 라우팅 및 오류 처리 논리를 구현할 수도 있습니다.
- HTTP 요청 및 응답: Express는 HTTP 요청 및 응답을 쉽게 처리할 수 있는 기능을 제공합니다. 예를 들어 요청 본문을 구문 분석하거나 특정 상태 코드로 응답을 반환할 수 있습니다.
- 뷰 엔진: Express는 다양한 뷰 엔진을 지원합니다. 이를 통해 사용자는 HTML 및 CSS와 같은 마크업 언어로 페이지를 렌더링할 수 있습니다. 대표적인 뷰 엔진으로는 Pug, EJS, Handlebars 등이 있습니다.
'노드 node.js' 카테고리의 다른 글
Cannot set headers after they are sent to the client 에러 (0) | 2023.06.14 |
---|---|
axios 와 fetch 차이 (0) | 2022.05.03 |
formdata로 id,password,profile(이미지) mySQL 저장 성공 (0) | 2022.05.02 |
bodyParser써야하는 이유 (0) | 2022.05.02 |
formData 이미지데이터 보내고 받기 (react,nodejs,header) (0) | 2022.04.28 |