Studying/JavaScript & Frameworks

[Node.js 떠먹여 주는 남자] Express.js

국장 지킴이 앨런 2022. 3. 5. 22:30
반응형

안녕하세요, 다시 돌아왔습니다. 지난 포스트에서는 Node.js 는 무엇이고 왜 이렇게 🔥 한가에 대해서 간략하게 알아 보았는데요. 이번 포스트에서는 Node.js 하면 가장 먼저 떠오르는 Express.js 에 대해서 알아보고자 합니다.

Express.js 가 뭔가요?

영문 Wikipedia 는 Express.js 를 이렇게 설명하고 있습니다.

Express.js, or simply Express, is a back end web application framework for Node.js,
released as free and open-source software under the MIT License.
It is designed for building web applications and APIs.

출처: https://en.wikipedia.org/wiki/Express.js

 

다행스럽게도 제 머리로도 이해할 수 있도록 쉽고 간단하게 설명해 놓은 것 같습니다. 번역 해 보면:

  • Express.js 는 무료로 배포된 오픈 소스 소프트웨어이며 Node.js 과 함께 사용할 수 있는 백엔드 웹 애플리케이션 프레임워크이다.
  • Express.js 는 웹 앱과 API 등을 개발하기 위해 디자인 되었다.

라고 하네요. 이 글을 보시는 분들은 어느 정도 웹에 대해서 기초 지식이 있으실 거라 생각이 되므로 API 가 무엇인지 웹 애플리케이션이 무엇인지에 대해서는 넘어가도록 하겠습니다. (API 는 따로 나중에 정리해서 포스트로 올릴 예정입니다.)

 

웹 애플리케이션의 주요 목적과 기능은, 클라이언트가 API 를 통해서 서버쪽으로 요청을 보내고, 서버는 그 요청을 받아서 적절한 응답을 다시 클라이언트 쪽으로 보내는 것입니다. 여기에서 말하는 클라이언트는 지금 이 포스트를 작성하는 저, 또는 이 글을 읽으시는 여러분처럼 웹 브라우저를 통해서 무언가를 요청하는 사용자들일 것이고, 제가 이 포스트를 다 작성 후 완료 요청을 API 를 통해 서버에 보내게 되면, 서버는 제 포스트 내용이 API 룰에 적합하는 지 판단 후 데이터베이스에 제 포스트 내용을 저장할 것입니다. 그리고 마지막으로 "이 포스트가 정상적으로 저장이 되었다." 라는 응답을 브라우저를 통해서 저에게 보내게 됩니다.

왜 Express.js 를 사용하나요?

설명이 조금 길어졌는데, Express.js 는 개발자들이 Node.js 에 사용자의 요청에 대한 응답 코드를 작성하는 것 (API Endpoints) 을 간편하게 해줍니다. Node.js 는 HTTP 모듈을 가지고 있는  로우 레벨 I/O 메커니즘입니다. 만약 Node.js 만으로 웹서버를 개발을 하게 되면, 페이로드 분석, 세션과 쿠키 핸들링 등 많은 일들을 반복해야 하지만, Express.js 가 이런 많은 일들을 처리해 주기에 개발자들이 더욱 더 빠르고 편리하게 개발을 할 수 있게 됩니다.

 

Express.js 는 Node.js 와 함께 가장 많이 사용되는 프레임워크입니다. 저는 아직 Express.js 만 써 보았고, Express.js 는 github 에서 가장 높은 stars 를 받아서 랭킹 1위에 위치해 있습니다. 혹시 이 글을 읽으시는 여러분이 Node.js 개발자를 꿈꾸고 계시다면, Express.js 를 먼저 사용해 보시는 것을 적극 권장합니다.

 

이번 포스트는 글이 매우 딱딱하고 지루한 것 같습니다. 아쉬운 마음을 금할 수 없는데, 이제 Node.js 찍먹은 여기까지 해두고 다음 포스트부터는 실제 코드를 입력해서 어떤 식으로 Node.js 와 Express.js 가 작동하는 지 확인해 보도록 하겠습니다.

그럼

반응형