[Node.js 보충수업] 1교시 - Node 와 Express에 대하여

귀귀재재·2022년 5월 1일
0

Nodejs 보충수업

목록 보기
1/3

Node js 에 대하여

Node (또는 더 공식적으로는 Node.js) 는 오픈소스, 크로스 플랫폼이며, 개발자가 모든 종류의 서버 사이드 도구들과 어플리케이션을 JavaScript로 만들수 있도록 해주는 런타임 환경이다.런타임은 브라우져 영역 밖에서도 사용할수 있도록 의도했다.(예를들면 서버 OS 또는 컴퓨터에서 직접적으로 실행되는). 이와 같이, 이 환경에서 특정 브라우져에서의 자바스트립트 API들을 제외시키고 , HTTP 와 파일 시스템 라이브러리들을 포함하여 더 많은 전형적인 OS API들을 추가했다.

노드의 장점

  1. Node는 단위시간당 처리량과 어플리케이션에서 확장성을 최적화 시키고, 많은 공통적인 웹 개발 문제들을 맞먹는다.(예를들면 실시간 웹 어플리케이션들)
  1. 코드는 순수한 자바스크립트로 작성된다, 이는 당신이 각각 브라우져와 웹 서버 코드를 작성할때 언어들 사이에 "context shift" 를 다루는 시간을 적게 할수 있을을 의미한다.
  1. 자바스크립트는 비교적 새로운 프로그래밍 언어이고 또다른 전통적인 웹서버 언어들과 비교할때 언어적 설계에서 향상의 이득을 가진다. 많은 다른 새롭거나 인기있는 언어들은 자바스크립트로 컴파일하거나 변환한다 그래서 또한 당신은 커피스크립트, 클로져스크립트, 스칼라, 라이브 스크립트 등등을 사용할 수 있다.
  1. 노드 패키지 매니저(NPM)는 수천만개의 재사용가능한 패키지에 접근할 수 있도록 한다. 이것은 최고의 의존성 해결과 또한 수많은 빌드 툴체인이 자동화되도록 한다.
  1. 이것은 마이크로소프트 윈도우, OS X, 룩스, 솔라리스, FreeBSD, OpenBSD, WebOS, 그리고 NonStop OS 등에서 돌아가는 버전과 같이 포터플하다. 더군다나, 이것은 특정한 인프라구조를 지원하고 Node 사이트 호스팅을 위한 문서를 제공하는 많은 웹 호스팅 공급자들에 의해서 잘 지원되고 있다.
  1. 도움을 주고자 하는 수많은 사람들이 존재하는 아주 활발한 개발 생태계와 커뮤니티를 지니고 있다.

Express에 대하여

많은 서버 개발자 분들이 서버를 만들기 위하여서는 수 많은 작업들과 그에 관한 전문지식에 대해 공부하여야 했습니다.
하지만, Express는 이러한 수고를 덜 수 있도록 Nodejs로 서버개발에 필요한 라이브러리와 클래스들을 총 집합시켜 최적화된 공간에서 손쉽게 서버 개발을 할 수 있도록 합니다.

Express 는 유명한가요?

유명한 웹 프레임워크를 쓴다는 것은 아주 중요합니다. 바로 해당 기술에 대한 지속가능성, 문서화, 추가 라이브러리, 그리고 기술 지원 자원에 대한 지표가 되기 때문입니다.

프레임워크의 인기를 측정하는 사이트에서는 github 프로젝트 수, 스택 오버플로우의 질문 수 등이 해당 정보로 인지도를 평가하려 하지만 명확히 그 인지도를 판단할 수 있는 척도가 없는 것은 사실입니다.

하지만, 현재 수많은 회사들 그리고 코드베이스에 기여하는 사람들의 수를 보았을때 Express는 유명한 프레임워크임을 알 수 있습니다.

Nodejs에 Express를 적용하는 방법

우선 첫번째, 디렉토리를 생성하고 Npm 을 통해 Initialize를 해줍니다.

> mkdir ExpressTest
> cd ExpressTest 
> npm init // NPM 을 통해 package.json을 생성합니다.

위의 사진처럼 나오게 됩니다.

해당 ExpressTest 폴더에서 express를 설치합니다

> npm install express

그리고 app.js를 파일을 생성하여 다음과 같이 작성합니다.

const express = require('express')
const app = express()
const port = 3000

app.get('/', (req, res) => {  // 우리는 이제 '/' 디렉토리에 response로 "HELLO WORLD!"를 보낸다...
  res.send('Hello World!')
})

app.listen(port, () => {
  console.log(`Example app listening at http://localhost:${port}`)
})

이제 express를 실행시켜보자

해당디렉토리에서

> node app.js

을 통해 결과를 확인 하실 수 있습니다.

profile
오늘 뭐하지///?

0개의 댓글