Next.js: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m fix e aggiunte minori |
Aggiunta tabella non completa con le versioni rilasciate. |
||
(7 versioni intermedie di 3 utenti non mostrate) | |||
Riga 1:
|SistemaOperativo = Multipiattaforma
|Linguaggio2 = typescript
|Genere = web framework}}'''Next.js''' è un [[framework per applicazioni web]] [[open source]], sviluppato da [[Vercel]] - che ne detiene i [[Copyright|diritti]] - e da una comunità di collaboratori individuali, che consente sia la generazione di pagine statiche che il rendering automatico a lato server.<ref name=":0">{{Cita web|url=https://nextjs.it/posts/framework-react-per-la-produzione-web|titolo=Il framework React per la produzione web {{!}} Next.js Italia|sito=nextjs.it|data=2021-02-20|lingua=it|accesso=2023-12-06}}</ref><ref name=":1">{{Cita web|url=https://sdtimes.com/softwaredev/next-js-14-is-now-officially-available-with-addition-of-server-actions-and-partial-prerendering-features/|titolo=Next.js 14 is now officially available, with addition of Server Actions and Partial Prerendering features|autore=Jenna Barron|sito=SD Times|data=2023-10-26|lingua=en-US|accesso=2023-12-06}}</ref><ref name=":2">{{Cita web|url=https://www.infoworld.com/article/3709608/nextjs-14-previews-partial-prerendering.html|titolo=Next.js 14 previews partial prerendering|autore=Paul Krill|sito=InfoWorld|data=2023-10-26|lingua=en|accesso=2023-12-06}}</ref><ref name=":3">{{Cita web|url=https://react.dev/learn/start-a-new-react-project|titolo=Start a New React Project – React|sito=react.dev|lingua=en|accesso=2023-12-06}}</ref><ref name=":4">{{Cita web|url=https://medium.com/bina-nusantara-it-division/next-js-the-complete-overview-and-why-its-gaining-popularity-77db5c47dc6d|titolo=Next.js: The Complete Overview and Why It’s Gaining Popularity|autore=tong eric|sito=Bina Nusantara IT Division|data=2023-06-30|lingua=en|accesso=2023-12-06}}</ref>
Next.js è basato sulla [[Libreria (software)|libreria]] per [[JavaScript]] [[React (web framework)|React]] e utilizza [[Node.js]] come [[Run-time system|ambiente di runtime]]
È uno dei framework per applicazioni web più popolari nell'industria.<ref name=":4" /><ref>{{Cita web|url=https://www.businessinsider.com/vercel-nextjs-pitch-deck-40-million-zeit-2020-12|titolo=Here's the pitch deck Vercel used to raise a $40 million Series B — its second funding round of the year — as it sees 'skyrocketing' popularity for its developer tools|autore=Rosalie Chan|sito=Business Insider|lingua=en-US|accesso=2023-12-06}}</ref>
== Caratteristiche Principali ==
Next.js si distingue dagli altri framework web per diverse ragioni.
La capacità di generare pagine statiche durante la fase di compilazione (Static Site Generation, SSG) consente inoltre al framework di ottimizzare ulteriormente le prestazioni di distribuzione di siti web attraverso [[Content Delivery Network|CDN]].<ref name=":0" /><ref name=":1" />
Il sistema di routing dinamico di Next.js è basato su pagina, semplificandone il funzionamento e rimuovendo la necessità di librerie aggiuntive.<ref name=":0" /><ref name=":2" /><ref name=":4" />
Next.js supporta il HMR (Hot Module Replacement), consentendo agli sviluppatori di visualizzare le modifiche in tempo reale senza dover ricaricare l'intera pagina.<ref name=":0" /><ref name=":4" />
Infine, essendo basato su React.js, Next.js sfrutta il vasto ecosistema di librerie e componenti di React.<ref name=":3" />
== Storia ==
Next.js fu rilasciato inizialmente come progetto open-source su [[GitHub]] il [[25 ottobre]] [[2016]].<ref>{{Cita web|lingua=en|url=https://github.com/vercel/next.js/releases/tag/1.0.0|titolo=Release 1.0.0 · vercel/next.js|sito=GitHub|accesso=2025-02-25}}</ref> Era basato principalmente su sei principi: funzionalità pronte all'uso senza installazioni, uso completo di [[JavaScript]], tutte le funzioni scritte in JavaScript, [[Lato server|server-rendering]] e suddivisone del codice automatici, data-fetching configurabile, richieste anticipate, sviluppo semplificato.
Dalla prima pubblicazione vennero poi implementati aggiornamenti con cadenza annuale. Aggiornamento degno di nota fu Next.js 13, pubblicato il [[26 ottobre]] [[2022]], che portò un nuovo pattern per il routing in [[Ciclo di vita del software|beta]], con l'aggiunta di App Router e il supporto ai layout, React Server Components, lo streaming e un nuovo set di metodi per il data-fetching. A questo si aggiunse l'annuncio di nuovi strumenti per lo sviluppo [[Front-end e back-end|front-end]] chiamato Turbo, incluso Turbopack come successore di Webpack, Turborepo per sistemi di build incrementale.<ref name=":5">{{Cita web|lingua=en|autore=Balázs Orbán, Delba de Oliveira, DongYoon Kang, Jiachi Liu, J. J. Kasper, Lee Robinson, Maia Teegarden, Sebastian Markbåge, Shu Ding, Steven, Tim Neutkens|url=https://nextjs.org/blog/next-13|titolo=Next.js 13|sito=nextjs.org|data=2022-10-25|accesso=2025-02-25}}</ref>
=== Versioni ===
Di seguito una lista non completa delle versioni pubblicate con indicazione in grassetto delle [[Versione (sviluppo software)|major release]].
{| class="wikitable"
|+
!Versione
!Data di pubblicazione
!Cambiamenti
!Note
|-
|'''1.0.0'''
|25 ottobre 2016
|Versione pubblica iniziale.
|
|-
|'''2.0.0'''
|marzo 2017
|
|<ref>{{Cita web|lingua=en|url=https://www.infoworld.com/article/2257962/nextjs-20-plays-better-with-react-and-javascript.html|titolo=Next.js 2.0 plays better with React and JavaScript|sito=InfoWorld|accesso=2025-02-25}}</ref>
|-
|'''7.0.0'''
|settembre 2018
|Aggiunto il supporto per l'[[Application programming interface|API]] React Context, miglioramenti alla gestione degli errori, aggiunto [[Webpack]] 4.
|<ref>{{Cita web|lingua=en|url=https://www.infoworld.com/article/2257076/nextjs-7-framework-compiles-faster-supports-webassembly.html|titolo=Next.js 7 framework compiles faster, supports WebAssembly|sito=InfoWorld|accesso=2025-02-25}}</ref>
|-
|'''8.0.0'''
|11 febbraio 2019
|Distribuzione serverless delle app, con codice suddiviso in [[Funzione anonima|funzioni lamda]] avviate su richiesta. Ridotto il tempo per le esportazioni statiche e migliorate le performance di pre-fetch.
|<ref>{{Cita web|lingua=en|url=https://www.infoworld.com/article/2259193/nextjs-8-now-supports-serverless-apps.html|titolo=Next.js 8 now supports serverless apps|sito=InfoWorld|accesso=2025-02-25}}</ref>
|-
|'''9.0.0'''
|8 luglio 2019
|Supporto a [[TypeScript]] automatico, routing file-based,
|<ref>{{Cita web|lingua=en|autore=Connor Davis, J. J. Kasper, Joe Haddad, Luis Alvarez, Lukáš Huvar, Tim Neutkens|url=https://nextjs.org/blog/next-9|titolo=Next.js 9|sito=nextjs.org|data=2019-07-08|accesso=2025-02-25}}</ref>
|-
|9.3.0
|9 marzo 2020
|Supporto a [[Sass]] e moduli [[CSS]].
|<ref>{{Cita web|lingua=en|autore=J. J. Kasper, Joe Haddad, Luis Alvarez, Shu Uesugi, Tim Neutkens|url=https://nextjs.org/blog/next-9-3|titolo=Next.js 9.3|sito=nextjs.org|data=2020-03-09|accesso=2025-02-25}}</ref>
|-
|9.5.0
|27 luglio 2020
|Aggiunta il supporto alla rigenerazione statica, riscrittura e reindirizzamento incrementale.
|<ref>{{Cita web|lingua=en|url=https://www.infoworld.com/article/2259321/nextjs-adds-incremental-static-pages-regeneration.html|titolo=Next.js adds incremental static pages regeneration|sito=InfoWorld|accesso=2025-02-25}}</ref>
|-
|'''10.0.0'''
|27 ottobre 2020
|Supporto a [[React (web framework)|React]] 17, ottimizzazione automatica delle immagini, supporto all'importazione CSS di terze parti tramite [[Npm (software)|npm]].
|<ref>{{Cita web|lingua=en|autore=Belén Curcio, Connor Davis, J. J. Kasper, Joe Haddad, Luis Alvarez, Shu Uesugi, Steven, Tim Neutkens|url=https://nextjs.org/blog/next-10|titolo=Next.js 10|sito=nextjs.org|data=2020-10-27|accesso=2025-02-25}}</ref>
|-
|'''11.0.0'''
|15 giugno 2021
|Aggiunto il supporto a [[Webpack]] 5, la funzionalità in anteprima "Next.js Live" per lo sviluppo real-time collaborativo, una funzione sperimentale per la conversione e migrazione automatica da Create React App a Next.js.
|<ref>{{Cita web|lingua=en|autore=J. J. Kasper, Shu Ding, Tim Neutkens, Tobias Koppers|url=https://nextjs.org/blog/next-11|titolo=Next.js 11|sito=nextjs.org|data=2021-06-15|accesso=2025-02-25}}</ref>
|-
|'''12.0.0'''
|26 ottobre 2021
|Aggiunto il compiler Rust, supporto [[AVIF]], funzioni Edge e Middleware, importazione nativa ESM & URL. Supporto a [[React (web framework)|React]] 18,
|<ref>{{Cita web|lingua=en|autore=Connor Davis, DongYoon Kang, Gerald Monaco, Javi Velasco, Jiachi Liu, J. J. Kasper, Kara Erickson, Maia Teegarden, Shu Ding, Steven, Tim Neutkens, Tobias Koppers|url=https://nextjs.org/blog/next-12|titolo=Next.js 12|sito=nextjs.org|data=2021-10-26|accesso=2025-02-25}}</ref>
|-
|'''13.0.0'''
|26 ottobre 2022
|Aggiunto un nuovo pattern in beta per il routing, con App Router e supporto ai layouts, React Server Components, streaming e un nuovo set di metodi per il data-fetching. Annunciato un nuovo set di strumenti per lo sviluppo front-end chiamato Turbo, con Turbopack in sostituzione di Webpack e Turborepo per sistemi di build incrementali.
|<ref name=":5" />
|-
|13.1.0
|22 dicembre 2022
|
|<ref>{{Cita web|lingua=en|autore=O. J. Kwon, Tim Neutkens|url=https://nextjs.org/blog/next-13-1|titolo=Next.js 13.1|sito=nextjs.org|data=2022-12-22|accesso=2025-02-25}}</ref>
|-
|13.2.0
|23 febbraio 2023
|
|<ref>{{Cita web|lingua=en|autore=Casey Gowrie, Jimmy Lai, Luba Kravchenko, Tim Neutkens|url=https://nextjs.org/blog/next-13-2|titolo=Next.js 13.2|sito=nextjs.org|data=2023-02-23|accesso=2025-02-25}}</ref>
|-
|13.3.0
|6 aprile 2023
|
|<ref>{{Cita web|lingua=en|autore=Delba de Oliveira, Tim Neutkens|url=https://nextjs.org/blog/next-13-3|titolo=Next.js 13.3|sito=nextjs.org|data=2023-04-06|accesso=2025-02-25}}</ref>
|-
|13.4.0
|4 maggio 2023
|Versione stabile di App Router per l'uso in produzione.
|<ref>{{Cita web|lingua=en|autore=Sebastian Markbåge, Tim Neutkens|url=https://nextjs.org/blog/next-13-4|titolo=Next.js 13.4|sito=nextjs.org|data=2023-05-04|accesso=2025-02-25}}</ref>
|-
|13.5.0
|19 settembre 2023
|
|<ref>{{Cita web|lingua=en|autore=Jimmy Lai, Tim Neutkens, Tobias Koppers|url=https://nextjs.org/blog/next-13-5|titolo=Next.js 13.5|sito=nextjs.org|data=2023-09-19|accesso=2025-02-25}}</ref>
|-
|'''14.0.0'''
|26 ottobre 2023
|Migliorata la gestione della memoria.
|<ref>{{Cita web|lingua=en|url=https://github.com/vercel/next.js/releases/tag/v14.0.0|titolo=Release v14.0.0 · vercel/next.js|sito=GitHub|accesso=2025-02-25}}</ref>
|-
|14.1.0
|18 gennaio 2024
|
|<ref>{{Cita web|lingua=en|autore=Jiachi Liu, Jimmy Lai|url=https://nextjs.org/blog/next-14-1|titolo=Next.js 14.1|sito=nextjs.org|data=2024-01-18|accesso=2025-02-25}}</ref>
|-
|14.2.0
|11 aprile 2024
|
|<ref>{{Cita web|lingua=en|autore=Delba de Oliveira, Tim Neutkens|url=https://nextjs.org/blog/next-14-2|titolo=Next.js 14.2|sito=nextjs.org|data=2024-04-11|accesso=2025-02-25}}</ref>
|-
|'''15.0.0'''
|21 ottobre 2024
|Supporto a [[React (web framework)|React]] 19, miglioramenti a Turbopack, aggiunta API per l'osservazione della [[Ciclo di vita del software|life-cycle]], miglioramenti ai form HTML per la navigazione lato client, supporto [[TypeScript]] per il file di configurazione, supporto a ESLint 9.
|<ref>{{Cita web|lingua=en|autore=Delba de Oliveira, Jimmy Lai, Rich Haines|url=https://nextjs.org/blog/next-15|titolo=Next.js 15|sito=nextjs.org|data=2024-10-21|accesso=2025-02-25}}</ref>
|-
|15.1.0
|10 dicembre 2024
|
|<ref>{{Cita web|lingua=en|autore=Janka Uryga, Jiachi Liu, Sebastian Silbermann|url=https://nextjs.org/blog/next-15-1|titolo=Next.js 15.1|sito=nextjs.org|data=2024-12-10|accesso=2025-02-25}}</ref>
|}
== Note ==
Line 34 ⟶ 152:
== Collegamenti esterni ==
* {{Collegamenti esterni
{{Portale|informatica|software libero}}
|