Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- nosql
- supabase
- REACT
- useEffect
- til
- Boostrap
- this
- Github Pages
- JavaScript
- url
- Protocol
- Fetch
- API
- IntersectionObserver
- 배포
- W
- CSS
- SQL
- TMDB
- web
- github
- Database
- bootstrap
- Cloud
- http
- HTML
- jQuery
- db
- data
- firestoredatabase
Archives
- Today
- Total
072DATA
Next.js 특징 정리 본문
Next.js: High-Quality 웹 애플리케이션
High-Quality란?
- 성능
- SSR(서버 사이드 렌더링) 및 SSG(정적 사이트 생성)를 통해 초기 로드 시간 단축
- 코드 스플리팅과 이미지 최적화로 런타임 성능 향상
- 코드 스플리팅 예시*
import React, { Suspense, lazy } from 'react'; const LazyComponent = lazy(() => import('./LazyComponent')); function App() { return ( <div> <Suspense fallback={<div>Loading...</div>}> <LazyComponent /> </Suspense> </div> ); } export default App;
- SEO -> Search Engine Optimization (웹사이트 검색 엔진 최적화)
- SSR을 통해 초기 로드 시 완전히 렌더링된 콘텐츠 제공, 검색 엔진 인덱싱 용이.
- SSG로 미리 생성된 HTML 파일 제공으로 SEO 성능 극대화
- 개발자 경험:
- 자동 코드 분할, 핫 리로딩, 타입스크립트 지원 등으로 생산성 향상
- API 라우트 기능으로 백엔드 통합이 편함
- 확장성:
- 서버리스 함수와 데이터 페칭 기능으로 유연한 확장성 제공
- 유연성:
- React와 완전히 호환되며, 다양한 툴 및 라이브러리와 함께 사용 가능
프레임워크 vs. 라이브러리
- 프레임워크: 개발자가 기능 구현에 집중할 수 있도록 필요한 모든 프로그래밍적 재원을 지원
- 예: Vue.js, Angular.js
- 라이브러리: 공통 기능의 모듈화가 이루어진 프로그램의 집합
- 예: React.js, react-router-dom, redux
라우팅
- React: 라우팅 제어는 개발자에게 맡겨짐 → 라이브러리.
- Next.js: 라우팅이 미리 정해져 있어 개발자가 간편하게 사용할 수 있음 → 프레임워크
Next.js 사용 이유
- 환경설정이 적은 (Configuration-less): 대부분의 웹 개발 기능을 기본으로 제공
- 유용한 기법 제공:
- 렌더링 방식: CSR에서 SSR, ISR, SSG로 전환 가능
- SSR -> Server Side Rendering
- 코드 스플리팅: 초기 로딩 시간을 단축시키고, 사용자에게 필요한 부분만 로드
- 렌더링 방식: CSR에서 SSR, ISR, SSG로 전환 가능
TTV (Time To View)
- 사용자가 최초 뷰를 볼 수 있을 때 까지 시간으로, 짧을수록 사용자 만족도와 서비스 품질에 긍정적 영향을 줌
쉬운 서버 로직 개발
- API Route 및 server action 지원으로 가벼운 서버 개발 가능함 하지만 복잡한 백엔드 로직(예: WebSocket, WebRTC) 구현에는 한계가 있음
배포의 용이성
- Vercel에서 쉽게 배포 가능, Full Stack 애플리케이션의 통합 배포 지원\
Data fetching -> 외부에 있는 리소스를 가져올 때
- next.js에서는 기능이 좀 더 확장됨 여러 옵션을 통해 한 번만 값을 가져올지, 일정 주기별로 가져올지,지속적으로 계속 가져올지 결정 가능 -> 이는 SSR SSG ISR 과 밀접관 연관이 있음
'FrontEnd > Next.js' 카테고리의 다른 글
OOTW 프로젝트 - 글 작성 구현하기 ( 이미지 업로드 ) (2) | 2024.10.18 |
---|---|
next.js supabase 이미지 업로드 (0) | 2024.10.15 |
Next.js 메타데이터, 동적 메타데이터, params (1) | 2024.10.08 |
Next.js 4가지 렌더링 (1) | 2024.10.02 |
Next.js에서의 라우팅 (페이지 이동) (2) | 2024.09.30 |