Au cours des versions 16.x, Next.js a introduit un nouveau modèle de programmation qui aborde les frustrations de l'App Router: des chargements initiaux rapides, des navigations client instantanées et une mise en cache déclarative optionnelle. Ce modèle, appelé Cache Components, deviendra la valeur par défaut dans Next.js 17. Précédant cette version, il n'était pas universellement recommandé en raison d'écarts de performance.
Les fonctionnalités clés dans 16.4 ferment ces écarts, permettant à Next.js de recommander Cache Components comme meilleure option pour chaque application. À partir de 16.4, toutes les nouvelles applications créées avec create-next-app ont les Cache Components activés par défaut. Les projets neufs peuvent adopter ce modèle sans réserve. Pour les applications existantes, la nouvelle commande `next upgrade --agent` fournit des conseils spécifiques aux versions et des agents d'aide Skills dédiés avec des refactorings nécessaires pour adopter les Cache Components. 16.4 inclut également des améliorations prêtes à l'emploi pour toutes les applications: moins de mémoire et d'utilisation disque en développement, des temps de compilation réduits, des bundles de production plus petits et React 19.3.
Les Cache Components sont un ensemble de fonctionnalités permettant aux développeurs de marquer des parties spécifiques d'un arbre de composants comme éligibles à la mise en cache. À l'aide d'annotations 'use cache', Next.js met en cache l'interface utilisateur du composant lors des navigations client et optionnellement sur le serveur lors du rendu ou de la construction. Ces annotations composables mélangent la mise en cache côté client, la mise en cache côté serveur extensible et le rendu au moment de la requête au sein d'une seule page, remplaçant les comportements de mise en cache implicite des versions précédentes de l'App Router. Une caractéristique marquante permet aux pages de faire fluiter le contenu statique et dynamique ensemble dans une seule réponse serveur, permettant des interfaces utilisateur sophistiquées sans sacrifier la vitesse.
Pour les pages entièrement statiques, la nouvelle option Static garantit que le shell de la route, le préchargement ou la navigation est statique, empêchant les composants dynamiques de dégrader accidentellement les performances ou les caractéristiques de coût.
Source: Hacker News · Résumé par HeadlinesBriefing