next.js는 리액트 프레임워크
- SEO를 위한 SSR을 지원
- 파일 기반 라우팅을 통해 Routing을 쉽게 구현가능
- 복잡한 Server 구축 없이 API를 배포할 수 있다.
- 초기 로딩 속도 개선을 위한 자동 Code Splitting등 최적화를 자동으로 지원.
- 개발 환경 설정이 쉽고 간단하다
a. Linting, Compling, Bundling, Deploying을 위한 설정이 자동화 되어 있다.
b. Router, tailwind, typescript, lint 등 중 주요 기능들을 configutation 없이 사용 가능하다.
SSR = Server Side Rendering
클라이언트(브라우저)가 서버에 매번 데이터를 요청하여 서버에서 처리하는 방식 클라이언트에서 요청이 들어올 때마다 매번 서버에서 새로운 화면을 그려서 제공 즉 서버가 화면을 그리는 주체가 된다.
- 장점
- 첫 페이지 로딩 속도가 클라이언트 사이드 렌더링에 비해 더 빠르다
(해당 첫 페이지에 해당하는 문서만 브라우저에게 전달하여 부라우저가 렌더링하기 때문에 초기 속도가 클라이언트 사이트 렌더링에 비해 더 빠르다.)- SEO(검색엔진최적화)가 가능하다
- 단점
- 초기 로딩 이후 페이지 이동 시 속도가 다소 느리다. (페이지 이동 시마다 클라이언트가 서버에게 필요한 데이터를 요청하고 응답하기 때문에 비교적 느리다.)