nest g application
위 명령어를 치기 위해서 아래에서 필요한 작업을 해준다.
mac기준
brew install node
//버전 확인
node -v
npm -v
//yarn 설치 --ignore-dependencies를 해주어야 node 제외하고 설치가능하다.
brew install yarn --ignore-dependencies
//yarn 버전 확인
yarn -v
//nest 설치
npm install -g @nestjs/cli
//nest 버전 확인
nest
Nest 또는 NestJS는 Node.js 서버 측 애플리케이션 구축을 위한 프레임워크이다.
내장 라이브러리
Axios: Promise API를 활용하는 HTTP 비동기 통신 라이브러리
Express: 웹 프레임워크, HTTP 라우팅 역할
API를 위한 쿼리 언어, 서버측 런타임으로 클라이언트에게 요청한 만큼의 데이터를 제공하는 데 우선 순위
목적 비교
sql: 데이터베이스 시스템에 저장된 데이터를 효율적으로 가져오기
gql: 웹 클라이언트가 데이터를 서버로 부터 효율적으로 가져오기
//SQL
SELECT
NAME
, ADDR
, SAL
FROM JOB.INFO
WHERE NAME = #{name}
//gql
{
menu {
name
side {
coke
}
}
}
리졸버
데이터를 가져오는 구체적인 과정 직접 구현하기
Apollo는 client와 server에서 모두 사용 가능
client는 상태관리 라이브러리로 react redux 대체
server는 REST API를 대체