티스토리 뷰

카테고리 없음

4주차 파트1 [백엔드 기초2]

파이썬 초보 파이리 2025. 2. 13. 23:39

HTTP 메서드(HTTP Method)

HTTP 메서드는 클라이언트가 서버에 요청을 보낼 때 사용하는 명령어다.

  • GET: 리소스를 조회할 때 사용
  • POST: 리소스를 생성할 때 사용
  • PUT / PATCH: 리소스를 수정할 때 사용
  • DELETE: 리소스를 삭제할 때 사용

REST API는 URL과 HTTP 메서드를 조합하여 원하는 리소스를 조회, 생성, 수정, 삭제할 수 있도록 설계된다.


Node.js란?

Node.js는 자바스크립트를 브라우저 밖에서도 실행할 수 있도록 만든 런타임 환경이다.
즉, 기존에는 브라우저에서만 실행되던 JavaScript를 서버 개발, 백엔드 프로그래밍 등 다양한 분야에서 활용할 수 있도록 해준다.

 

Node.js의 위상
Stack Overflow에서 발표한 2024년 개발자 설문조사에 따르면, 전 세계적으로 Node.js의 사용 비율이 상당히 높다.
국내에서는 백엔드 개발에 주로 Spring이 사용되지만, 글로벌 시장에서는 Node.js가 강력한 선택지로 자리 잡고 있다.


Node.js의 특징

  1. 싱글 스레드 (Single Thread) - 요리사가 한명 - > 주문이 계속 들어와도 한명이 처리  
    • 여러 개의 작업을 하나의 스레드에서 처리한다.
    • 하지만 이벤트 기반 구조 덕분에 효율적으로 동작한다.
  2. 이벤트 기반 (Event-Driven) - 주문이 들어와야만 일을 합니다(= 주문이 없으면 일을 안함)
    • 특정 이벤트(요청, 데이터 입력 등)가 발생해야만 실행된다.
    • 불필요한 리소스를 사용하지 않도록 설계됨.
  3. 논블로킹 I/O (Non-Blocking I/O) - 한명이 일을 하는데, 요리를 순차적으로 x, 중간중간 비는 시간이 있으면 다른요리를 함
    • ex) 라면 1개(10분 중 물 끓는 시간 5분 : 요리사는 그 물만 쳐다봄), 볶음밥(완성 5분) : 라면 물 끓여놓고 -> 볶음밥-> 라면요리
    • 한 작업이 실행될 때, 기다리지 않고 다른 작업을 먼저 처리할 수 있다.
    • 기다리는 시간을 최소화하여 성능을 높인다.

모듈, 라이브러리, 프레임워크

모듈 (Module)

  • 내가 만든게 아니라, 선배 개발자들이 미리 만들어둔 코드 덩어리
  • 특정 기능을 미리 구현해둔 코드 묶음
  • 필요할 때 가져다 쓸 수 있음.
  • 선배들이 만들어 둔 모듈을 사용하고 싶으면..
  1.  기본 내장된 거 쓰자 setTimeout()
  2. 외부 모듈 어떻게 사용하지? : npm

라이브러리 (Library)

  • 여러 개의 모듈을 모아둔 것
  • 원하는 기능을 쉽게 가져다 쓸 수 있도록 정리된 형태

프레임워크 (Framework)

  • 개발의 기본 틀을 제공
  • 라이브러리보다 더 강력한 규칙과 구조를 가짐
  • 대표적으로 Express.js, NestJS, Spring 등이 있음.

라이브러리(feat. 프레임워크)

도서관 : 분류 -> 상세 주제의 한권의 책을 골라냄 기준 : 출판사, 작가, 내용,..

-장점 : 내가 원하는 걸 빌릴 수 있고

-단점 : 고르기가 힘들 수도,,찾는 시간 오래걸리고, 도서관 가는 시간,...

 

node.js 덕분에 자바스크립트 모듈을 만들 수도 있게 되었고, 사용도 할 수 있게됨!

 

=라이브러리=모듈

cf. 프레임 워크 : 내가 만들고 싶은 서비스를 구현하는 데 필요한 모든 일을 틀 안에서 하는 것.

(프레임 워크는 필요해보이는 라이브러리(모듈)을 미리 다 틀 안에 넣어뒀습니다.)


npm이란?

: 외부 모듈을 내 프로젝트에 설치할 수 있게 해주는 친구

npm이 저장소에 "외부 모듈"을 설치를 우리가 원하는 프로젝트에 자동으로 해준다.

= "프로그램"설치 파일 다운로드 받아서 더블 클릭

= npm install 모듈

 

(npm uninstall 모듈 - 삭제)

 

npm i 모듈명 -g : 내 컴퓨터에 있는 모든 프로젝트에 해당 모듈 설치//추천 안함

npm (Node Package Manager)

  • Node.js의 패키지(모듈)들을 관리하는 도구
  • 원하는 패키지를 쉽게 설치하고 사용할 수 있도록 도와줌.

npm을 통해 설치된 모듈 관리

  • package.json: 설치한 모듈들의 목록과 버전 정보를 저장
  • package-lock.json: 모듈의 상세 정보와 의존성을 기록

npm을 활용한 모듈 관리

  • npm list: 설치된 모듈 확인
  • npm uninstall {모듈명}: 특정 모듈 제거


Node.js의 내장 모듈

내장 모듈이란?

  • Node.js에 기본 포함된 모듈
  • 별도의 설치 없이 require()만 하면 바로 사용 가능

대표적인 내장 모듈

  • http: 웹 서버를 생성하는 데 사용
  • fs: 파일 시스템을 다루는 기능 제공
  • path: 파일 및 디렉터리 경로 관리
  • os: 운영체제 관련 정보 제공

내장 모듈을 활용하면 추가적인 패키지 설치 없이도 다양한 기능을 구현할 수 있다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/12   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함