Node.js는 자바스크립트(js)를 사용하여 서버 사이드 애플리케이션을 개발할 수 있게 해주는 런타임 환경입니다.
비동기 이벤트 기반의 모델을 통해 높은 성능과 확장성을 제공하며, 특히 I/O 집중 애플리케이션에서 뛰어난 성능을 발휘합니다.
이번 포스팅에서는 Node.js를 처음 접하는 분들을 위해 기본 개념부터 Express 프레임워크를 활용한 웹 서버 구축까지 다루는 기초 강좌 커리큘럼(curriculum)을 소개합니다.
javascript의 강좌가 아닌 만큼 javascript에 대해서는 어느 정도 이해를 하고 있다는 가정하에 진행됨을 양해부탁드립니다.
Node.js 기초 강좌 커리큘럼(curriculum)
1. 소개 및 환경 설정
Node.js 소개
- Node.js란 무엇인가?
- Node.js의 특징과 장점
개발 환경 설정
- Node.js와 npm 설치하기
- 코드 에디터 (Visual Studio Code 등) 설정
- 첫 Node.js 애플리케이션 실행해보기
글: [Node.js – 기초 강좌] Nodejs 소개(Intro.) 및 개발환경 설정(environment setting)
Node.js의 기본 개념을 이해하고 개발 환경을 설정하는 것은 매우 중요합니다. 이 단계에서는 Node.js가 무엇인지, 어떤 장점을 가지고 있는지를 배우고, 간단한 애플리케이션을 실행해보는 것으로 시작합니다.
2. Node.js 모듈의 이해와 패키지 관리 (with npm)
모듈이란?
- Node.js 모듈 이해
- 모듈 사용하기
npm을 이용한 패키지 관리
- npm, 소개
- npm을 이용한 패키지 설치 및 관리
글: [Node.js – 기초 강좌] 2. nodejs 모듈(module)의 이해와 패키지 관리 (with npm)
이 단원에서는 모듈을 사용하여 코드를 모듈화하고, npm을 이용해서 node.js 내의 패키지를 관리하는 방법을 배웁니다.
3. Typescript in Node.js
Typescript 소개
- Typescript란 무엇인가?
- Typescript 장점과 단점
Typescript 사용하기
- 설치 및 설정
- 사용하기
글: [Node.js – 기초 강좌] 3. Typescript in Nodejs
4. Express 프레임워크
Express 소개
- Express란 무엇인가?
- Express의 특징과 장점
Express 프로젝트 생성
- Express 애플리케이션 초기화
- 주요 디렉토리와 파일 구조 이해
글:[Node.js – 기초 강좌] 4. Express Framework (소개, 사용방법)
Express는 Node.js의 가장 인기 있는 프레임워크로, 간단하고 유연한 웹 서버 구축을 가능하게 합니다. Express의 기본 개념과 프로젝트 초기화 방법을 익히게 됩니다.
5-1. 기본 웹 서버 구축 (Routing 편)
라우팅
- 기본 라우팅 설정
- 동적 라우팅과 URL 파라미터 처리
글: [Node.js – 기초 강좌] 5-1. 기본 웹 서버 구축(Routing 편)
5-2. 기본 웹 서버 구축 (Middleware 편)
미들웨어
- 미들웨어의 개념과 역할
- 사용자 정의 미들웨어 작성
글: [Node.js – 기초 강좌] 5-2. 기본 웹 서버 구축(Middleware 편)
6. 데이터베이스 연동
MongoDB와 Mongoose
- MongoDB 소개 및 설치
- Mongoose를 이용한 MongoDB 연동
CRUD 작업
- 데이터베이스에 데이터 생성, 읽기, 업데이트, 삭제 작업 구현
Node.js 애플리케이션에서 MongoDB와 같은 NoSQL 데이터베이스를 연동하고, Mongoose를 사용하여 CRUD 작업을 구현하는 방법을 배웁니다.
글: [Node.js – 기초 강좌] 6. Database 연동하기(Feat. MongoDB 소개 및 연동)
7. 사용자 인증 및 보안
사용자 인증
- 세션과 쿠키를 이용한 인증
- JSON Web Token (JWT)을 이용한 토큰 기반 인증
[Node.js – 기초 강좌] 7-1. 사용자 인증하기(Authentication) – (Session & Cookie 사용)
[Node.js – 기초 강좌] 7-2. 사용자 인증하기(Authentication) – (JWT 사용)
8. Websocket
Websocket 소개
- Websocket 이란?
- Websocket 동작원리
Websocket 사용하기
- 환경 설정
- Server Websocket 사용
- Client Websocket 사용
Websocket에 대해 알아보고, Node.js(with Typescript)에서 Websocket을 사용하는 법을 배웁니다.
[Node.js – 기초 강좌] 8. Websocket 소개 및 사용하기
9. Packaging
webpack 소개
pkg 소개
[Node.js – 기초 강좌] 9. Packaging 하기 (Webpack, pkg)
참고 링크
- Node.js 공식 문서
- 공식 github repository
- mdn web docs Blog 강좌
- devitworld nodejs tutorial repository