Safari 17.4 sarà del 60% circa più veloce rispetto alla versione attuale e permetterà l'esecuzione di web app ancora più complete che oggi, per i limiti di velocità dei browser, non sarebbero fruibili con una buona esperienza utente. Questo grazie ai miglioramenti fatti dal team di WebKit, il motore del browser Apple che si occupa di gestire le pagine e manipolare il DOM.
Detta così la notizia potrebbe apparire un mezzo miracolo, il 60% è un incremento troppo ampio per un cambio di release, ma è necessario fare una lunga serie di precisazioni spiegando esattamente a cosa si riferisce Apple ma soprattutto anticipando che anche per tutti gli altri motori dei browser accadrà qualcosa di simile.
La prima cosa da dire è che il 60% è il risultato di una serie di miglioramenti a tanti piccoli aspetti ognuno dei quali ha avuto un incremento in un range nell'1% - 2% tuttavia, per come funziona il web che prevede il caricamento di una pagina e la manipolazione della pagina ad opera di script JS, è corretto aggregare questi miglioramenti per dare il risultato finale, che alla fine è il tempo necessario alla pagina per caricarsi.
Inoltre questo incremento del 60% è relativo ad un ambito specifico, che è quello del nuovo benchmark Speedometer 3.0, uno struento che gli sviluppatori di tutti i motori dei browser, da Mozilla a Google arrivando a WebKit, hanno rilasciato da poco.
Il mondo del web in questi anni sta cambiando: alcune librerie javascript che hanno fatto la storia dei siti internet, permettendo la manipolazione della struttura dei siti (la più famosa è JQuery) stanno piano piano scomparendo e con lei tantissime altre librerie che sono state sostituite da strumenti sempre più moderni.
Oggi i siti più evoluti sono praticamente applicazioni che girano all'interno dei browser usando framework come React e Vue.js, e il nuovo Speedometer 3.0 è stato progettato guardando proprio a quelli che sono i framework più diffusi.
Ogni test del benchmark ricalca il funzionamento e la logica di un nuovo tipo di applicazioni che usano librerie recenti che fino ad oggi i motori dei browser non hanno contemplato o per gestire le quali non erano ottimizzati.
Un tempo erano i server dei siti a servire le pagine già renderizzate, oggi i siti più avanzati scaricano un pacchetto contenente i file javascript e i fogli di stile che contengono praticamente tutto il sito e il server passa solo i dati fondamentali per popolare le pagine e lo fa in un formato denominato JSON. Per capire di cosa sta parlando Apple quando dice ottimizzazione si può considerare che dentro questo pacchetto JSON un tempo si trovavano solo caratteri ascii, oggi ci sono anche icone, emoji, simboli e altri caratteri che fino a qualche anno fa non erano contemplati. Il nuovo Safari 17.4 è molto più veloce a convertire una stringa in JSON e viceversa, e questo fa guadagnare pochi millisecondi preziosi durante la compilazione della pagina. Ci sono ottimizzazioni per i CSS dinamici, per le computed properties e per molte altre funzioni che oggi esistono e sono importanti, qualche anno fa non esistevano.
Tutte queste novità permettono di raggiungere i risultati scritti sopra rendendo molto più rapidi e fluidi i siti che si basano sui più moderni framework JS e vogliono comportarsi, con animazioni e senza caricamenti di pagina percepibili, come se fossero vere e proprie app, o meglio, web app.
Il miglioramento di Safari è quindi un miglioramento obbligato per stare al passo con i tempi: tutti i produttori di browser hanno contribuito allo sviluppo dello Speedometer 3.0 per riflettere una situazione più attuale rispetto a quella del vecchio benchmark.
Sui nuovi benchmark molto specifici che includono ad esempio la manipolazione di grafici, l'uso di un'app To Do List realizzata in React, Vue, Angular, un sito di news realizzato in Nuxt.js e la renderizzazione di file SVG gli stessi sviluppatori stanno ottimizzando i loro motori. Apple è stata la prima, non sarà l'unica.
Una cosa deve essere comunque ben chiara: il primo è che questo miglioramento c'è solo su alcuni aspetti dei siti web moderni. Safari 17.4 ha prestazioni del 60% maggiori con lo Speedometer 3.0 ma con la versione precedente, che non adottava le ultime tecnologie, migliora solo del 15% circa, segno che solo alcune delle ottimizzazioni sono utili anche per siti meno recenti ed evoluti.
Inoltre questo miglioramento riguarda solo ed esclusivamente il rendering delle pagine e la manipolazione del DOM, ovvero della struttura HTML di una pagina, quindi non si tiene conto del tempo di caricamento e di altri parametri, come la dimensione ad esempio delle foto o altri eventuali script esterni (ad esempio le pubblicità) che oggi sono la principale causa del rallentamento dei siti.