nodejs 1차시

백엔드란?

웹 사이트나 앱의 뒤에서 작동하는 영역

사용자가 볼 수 X  - 서버, 데이터 베이스, API 등 관리

 

서버란?

HTTP요청을 받아 다양한 처리를 하는 프로그램을 실행시키는 공간

  • 웹 서버
    • 정적인 콘텐츠 제공
    • 아파치, HTTP sever, Nginx
  • WAS
    • 동적인 웹 앱을 실행하는데 사용 웹 서버 뒤에서 요청에 대한 응답 제공
    • Spring, django

 

개발자의 업무

과제 할당 과제 분석 개발 테스트 QA 배포 유지 보수

협업시 confluence, jira 추천

 

백엔드 언어

  • 1위 파이썬 flask
  • 2위 node.js
  • 3위 java
  • 4위 go
  • 등등등


데이터 베이스란?(DB)

전자적으로 저장되고 체계적인 데이터 모음

DBMS(데이터 베이스 관리 시스템)을 사용하여

데이터를 저장 및 검색, 편집을 할 수 있다.

  • RDB
    • 행과 열로 구성된 테이블 형태
    • 엄격한 데이터 구조를 미리 정의 해야됨
    • SQL을 사용한다
    • 데이터 간 관계를 키로 연결
    • 트렌젝션, 대이터 무결성 보장(ACLD 특성)
    • MySQL, PostgreSQL, Oracle, MariaDB
  • NoSQL
    • 테이블 대신 문서, 키-값, 그래프, 컬럼 등 다양한 구조 사용
    • 유연한 데이터 구조를 가진다
    • SQL대신 각 데이터 베이스에 맞는 전용 쿼리 및 API 사용
    • 대용량, 비정형 데이터 처리에 유리하다
    • 서버 추가에 용이하다
    • MongoDB(문서), Redis(키-값), Cassandra(칼럼), Neo4js(그래프)

 

패키지 매니저란?

npm-Node.js를 설치하면 자동으로 설치됨

yarn-npm의 용량, 속도, 보안 문제 해결을 위해 사용

 

빌드 도구란?

웹팩 - 다양한 모듈 지원, 하지만 느리다

ESBuild - ESM와 CommonJS만 지원한다, 빠르고 편리하다

Vite- ESBuild와 비슷하다, 더 많은 기능을 지원한다

 

개발 도구

VSC - 앞으로 사용할 개발 도구이자 최고의 웹 개발 도구

 

웹 프레임 워크

프론트 엔드 - React, Vue.js, Svelte 등

백 엔드 - ExpressJs, NextJs

 

Nodejs의 차별점

  • 프론트엔드와 백엔드를 모두 JavaScript로 개발 가능
    • 풀스택 JS 실현 가능: React, Vue 등과 함께 사용할 때, 클라이언트와 서버를 같은 언어(JS)로 작성 가능
  • NPM
    • 세계 최대의 오픈소스 생태계
    • 사용할 수 있는 라이브러리 수가 압도적
  • 빠른 개발 속도와 유지 보수
    • 생산성 높음, MVP 빠르게 구현 가능
    • 유지 보수가 매우 간편하다

 

Nodejs의 단점

  • CPU 연산이 많은 작업에는 부적합 (예: 이미지 처리, 머신러닝 등)
    • 싱글 코어의 한계
  • 콜백 지옥
    • 초보자에게 부적합
  • 타입 안정성 부족
    • TypeScript 도입 필요

 

'web > web' 카테고리의 다른 글

node js 3, 4차시  (0) 2025.08.17
Nodejs 2차시  (2) 2025.08.10
JS 4차시 - 비동기  (1) 2025.07.29
Js 3차시 - 객체  (3) 2025.07.28
JavaScript 2차시 - 돔, 노드, 이벤트  (1) 2025.07.25