[데브코스 TIL] 4주차 Day 3 / Express.js - 웹 풀 사이클 데브코스 TIL

김진환·2023년 12월 6일
3

Express 모듈 입문!

'23.12.06(수) 웹 풀 사이클 데브코스 TIL

Express

  • Express.js 모듈은 http 모듈을 사용해 서버를 구성할 때 필요한 함수나 설정들을 미리 적용해 보다 간단하게 js로 서버를 만들고 관리할 수 있게 도움을 주는 모듈이다.
const express = require('express')
const app = express()

app.get('/', function (req, res) {
  res.send('Hello World')
})

app.listen(3000)

npm document에 적혀있는 예제이다.

함수(경로, 콜백함수) 의 구조로

app.get()
app.post()
app.put()
app.delete()

의 기본적인 CRUD 기능을 사용할 수 있다.

http 모듈의 write 기능과 달리
expressres.send() 는 argument의 타입을 자동으로 인식한다.

res.json() 처럼 json으로 확정하여 전송할 수 있는 메서드도 있으나,
성능 자체에 큰 차이가 있는 것은 아니다.

res.send()res.json() 모두 더 이상 응답이 없다면 자동으로 end 하기 때문에
http와 달리 end 메서드를 굳이 사용하지 않아도 된다.

JSON

JSON(JavaScript Object Notation)

JSON은 JavaScript 객체 리터럴, 배열, 스칼라 데이터를 표현하는 텍스트 기반의 방식이다.

JSON을 이용해 웹에서 데이터를 교환할 때, 한 번의 전송으로 동일한 범주나 다양한 데이터를 모아서 전송할 수 있다.

let person = {
	name : “Jinwhan”,
	age : 25
}

let book = {
	name : “Node.js를 공부해보자.,
	price : 20000,
  	description : "Node.js 학습으로 백엔드 개발자 되기" 
}

JS의 객체를 생성하는 방식으로 JSON 데이터를 만들 수 있다.
위 예시는 엄밀히 말하면 JS 객체다.

JS 객체와 JSON의 차이점

JS 객체는 JS 엔진 메모리 내에 있는 데이터 구조 이고,
JSON은 객체의 내용을 기술하기 위한 텍스트 파일이다.

// people.json
{
	name : “Jinwhan”,
	age : 25
},
{
  name : "Gildong",
  age : 581
}

위처럼 json 데이터는 .json이라는 json 확장자의 텍스트 파일로 저장할 수 있고,
이를 불러와 데이터 연산에 사용할 수 있다.

데이터를 저장하는 구조는 JS 객체와 동일하지만 JS 프로그래밍의 데이터 타입이 아닌 별도의 데이터 묶음 정도로 생각할 수 있다.

회고

지난 시간에 이어 httpexpress로 백엔드 개발의 입문을 학습했다.
앞으로 express를 더 학습하며 개발에 사용하게 되겠지만,

더 높은 수준의 모듈을 사용해 개발하는 만큼 근본적인 원리에 대해 학습하는 과정이 꼭 필요할 것 같다.

profile
개발자라는 틀에 얽매이지 않는 성장

1개의 댓글

comment-user-thumbnail
2023년 12월 7일

안녕하세요 beyond-developer님 저는 프론트엔드개발자를 꿈꾸고 있는 대학생입니다
다름이 아니고 제가 웹 풀 사이클 데브코스 2기 지원을 해볼까 고민중인데 혹시 현재까지 수업 들으셨을때 전반적인 난이도나 수업이 어떠셨는지 궁금하여 댓글 남깁니다!!

답글 달기