효율적이고 확장 가능한 Node.js서버 즉 애플리세이션을 구축하기 위한 프레임워크다.
진보적인 JavaScript를 사용하고 TypeScript(그러나 여전히 개발자가 순수 JavaScript로 코딩할수 있음)로 구축되고 완벽하게 지원하며 OOP(객체 지향 프로그래밍), FP(기능 프로그래밍) 및 FRP(기능 반응 프로그래밍)의 요소를 결합한다.
터미널에 아래와 같이 Nestjs cli를 설치한다.
npm i -g @nestjs/cli
설치가 완료되면 아래와 같이 CLI를 이용해 프로젝트를 만들 수 있다.
(프로젝트 생성시 생각보다 시간이 꽤 걸린다.)
nest new <프로젝트명>
프로젝트 생성시 패키지 매니저를 선택하라고 하는데 자기한테 맞는 매니저를 선택하면 된다.
(나는 처음부터 npm을 써왔기 때문에 npm으로 선택했다.)
생성된 프로젝트의 구조
자동생성된 프로젝트 소스 폴더의 구조는 다음과 같다.
npm start
npm start는 nodemon과 같이 바뀐 내용이 있는 경우 자동으로 서버를 다시 시작해주는 기능
dist는 Nest가 실행 됐을 때 TypeScript를 JavaScript로 컴파일 해준다.
오늘은 Nest에 대해서 알아보고 기본적인 파일들에 적어보았다.
아직까지는 Node.js가 익숙하지만, 세팅하는 부분에 있어서 Nest가 좀더 편한거 같다.
다음에는 controller와 services, moudule에 대해 더 알아봐야겠다.
[참조: https://codegear.tistory.com/54?category=991389]
[참조: https://docs.nestjs.com/]