Next.js 16 버전 업데이트 내용

2025년 10월 26일

2025년 10월 21일, Next.js Conf 2025와 함께 Next.js 16이 정식 출시되었습니다. 이번 업데이트는 성능 개선과 개발자 경험 향상에 초점을 맞춘 메이저 릴리즈라고 생각합니다.

주요 변경사항들을 알아보고 소개해보겠습니다.


1. Turbopack이 기본 번들러로 채택

기존 Turbopack은 베타버전으로써 시험단계였으나 이제 기본 번들러가 되었습니다.

성능개선점으로는,

  • Fast Refresh가 5-10배 빨라졌습니다

  • 빌드 속도가 2-5배 향상되었습니다

  • 파일 시스템 캐싱(베타) 기능으로 대규모 앱의 시작 및 컴파일 시간이 더욱 단축되었습니다

2. Cache Components

Partial Pre-Rendering(PPR)과 use cache 디렉티브를 활용한 새로운 캐싱 전략이 도입되었습니다.

주요 특징:

  • 즉각적인 페이지 네비게이션 제공

  • 개발자가 무엇을 캐싱할지 명확하게 제어 가능

  • 더 나은 성능과 사용자 경험

// 컴포넌트 레벨에서 캐싱 제어
'use cache'

// 기존에는 이렇게 래핑해서 사용
const getCachedUser = unstable_cache(
  async (id) => {
    return db.query.users.findFirst({
      where: eq(users.id, id)
    })
  },
  ['user'], // cache key
  {
    tags: ['users'],
    revalidate: 3600
  }
)

// 훨씬 간단해짐
async function getUser(id) {
  'use cahche';
  return db.query.users.findFirst({
      where: eq(user.id, id)
   })
}

이렇게 되면 기존에 사용하던 방식인 unstable_cache() 함수는 use cache가 Next.js에서 안정화되고 지원되면 deprecated 될 예정입니다.

3. React 19.2 지원

Next.js 16은 React 19.2의 새로운 기능들을 완벽하게 지원합니다:

  • View Transitions: 페이지 전환 시 부드러운 애니메이션

  • useEffectEvent(): 이펙트 내에서 안정적인 이벤트 핸들러 사용

  • <Activity/> 컴포넌트: 로딩 상태 관리 개선

4. React Compiler 안정화

React Compiler가 정식 버전으로 안정화되었습니다.

장점:

  • 자동 메모이제이션으로 불필요한 리렌더링 방지

  • useMemo, useCallback 등을 수동으로 작성할 필요 감소

  • 코드 수정 없이 성능 최적화 가능

더 이상 성능 최적화를 위해 모든 곳에 메모이제이션을 추가할 필요가 없습니다!

5. Next.js DevTools MCP

AI 시대에 맞는 새로운 개발 도구가 추가되었습니다.

Model Context Protocol(MCP) 통합:

  • AI 기반 디버깅 지원

  • 애플리케이션에 대한 컨텍스트 기반 인사이트 제공

  • 더 스마트한 문제 해결

6. middleware.ts → proxy.ts

기존의 middleware.tsproxy.ts로 대체되었습니다.

변경 이유:

  • 앱의 네트워크 경계를 더 명확하게 정의

  • 역할과 책임이 더 분명한 네이밍

// 기존: middleware.ts
// 새로운: proxy.ts

export default function proxy(request) {
  // 프록시 로직
}

7. 라우팅 최적화

레이아웃 중복 제거:

  • 동일한 레이아웃이 여러 번 렌더링되지 않도록 최적화

  • 메모리 사용량 감소

**실제 예시:**
```
이전 방식:
/products/1 → Layout + Product1 데이터 다운로드
/products/2 → Layout + Product2 데이터 다운로드 (Layout 중복!)
/products/3 → Layout + Product3 데이터 다운로드 (Layout 중복!)
...50개 반복

Next.js 16:
Layout → 1번만 다운로드
/products/1 → Product1 데이터만
/products/2 → Product2 데이터만
/products/3 → Product3 데이터만

점진적 프리페칭:

  • 필요한 리소스만 미리 로드

  • 초기 로딩 속도 개선

  • 네트워크 사용량 최적화

업그레이드 방법

Next.js 16으로 업그레이드하는 것은 매우 간단합니다:

npx @next/codemod@canary upgrade latest

이 명령어 하나로 자동으로 업그레이드와 필요한 코드 변경을 처리해줍니다.

수동 업그레이드

직접 업그레이드하려면:

npm install next@latest react@latest react-dom@latest

결론

Next.js 16은 "속도"에 집중한 업데이트입니다. Turbopack의 안정화로 개발 경험이 크게 향상되었고, React Compiler의 안정화로 성능 최적화가 더 쉬워졌습니다.

특히 Turbopack의 Fast Refresh 속도는 체감상 정말 빨라졌습니다. 큰 프로젝트를 다루는 분들이라면 이것만으로도 업그레이드할 가치가 있다고 생각합니다.

참고 자료