Deprecated: Creation of dynamic property Timber\Site::$pingback is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Site.php on line 180

Deprecated: Creation of dynamic property Timber\User::$name is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/User.php on line 118

Deprecated: Creation of dynamic property Timber\Post::$os_meta is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$has_disclaimer is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_edit_lock is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_edit_last is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_thumbnail_id is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$tipologia is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_tipologia is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$attributi is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_attributi is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$in_evidenza_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_in_evidenza_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$inviato_in_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_inviato_in_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$fonte is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_fonte is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$fonte_url is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_fonte_url is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_category is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_blz_affiliation_attributes is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_content_type is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_attributes is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_speciali is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_focuskw is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_metadesc is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_linkdex is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_content_score is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_focuskeywords is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_keywordsynonyms is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_estimated-reading-time-minutes is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_indexnow_last_ping is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$os_previous_publish_date is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$os_notification_id is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_wp_old_date is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_oembed_2201eade823c6fd9727509fc74f48051 is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_oembed_time_2201eade823c6fd9727509fc74f48051 is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_date_gmt is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$comment_status is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$ping_status is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_password is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_name is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$to_ping is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$pinged is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_modified is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_modified_gmt is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_content_filtered is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$guid is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$menu_order is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_mime_type is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$comment_count is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$filter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$status is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71
Servo: il motore di rendering che potrebbe riscrivere il futuro dei browser Web

Servo: il motore di rendering che potrebbe riscrivere il futuro dei browser Web

Servo, il motore di rendering Web sviluppato in Rust e originariamente avviato da Mozilla Research, ha annunciato la release 0.1.0. Il rilascio guarda all'integrazione dei progetti di terze parti.
Servo: il motore di rendering che potrebbe riscrivere il futuro dei browser Web

Il progetto Servo, uno dei più ambiziosi esperimenti nell’ambito dei motori di rendering Web, ha annunciato la disponibilità della nuova versione 0.1.0 per tutte le piattaforme supportate: macOS, Linux, Windows, Android e OpenHarmony (base open source di Huawei HarmonyOS). La release segna un passo importante verso la maturità di uno strumento che potrebbe portare una ventata di aria fresca sul Web.

Un laboratorio per l’innovazione nel rendering Web

Servo non è un browser nel senso tradizionale del termine, ma un motore di rendering scritto in Rust, linguaggio scelto per la sua sicurezza nella gestione della memoria e la sua efficienza. Il progetto, originariamente avviato da Mozilla Research, ha l’obiettivo di esplorare nuove architetture parallele e più sicure per i browser del futuro.

Dopo la nascita in Mozilla Research nel 2012, il trasferimento sotto Linux Foundation nel 2020 e poi sotto Linux Foundation Europe nel 2023, Servo prova a trasformarsi da progetto di ricerca e dimostrazione tecnica a componente integrabile in applicazioni desktop, mobile ed embedded. La base tecnica resta ambiziosa: rendering engine scritto in Rust, supporto dichiarato a WebGL e WebGPU, portabilità su macOS, Linux, Windows, Android e OpenHarmony, oltre a una struttura modulare che punta all’embedding più che al browser general purpose

Grazie alla sua architettura modulare e altamente concorrente, Servo consente di elaborare in parallelo diversi elementi di una pagina Web (layout, CSS, script, immagini), sfruttando appieno le moderne CPU multi-core. L’approccio si discosta dai modelli tradizionali – come quello di Gecko o Blink – che tendono a essere più lineari e vincolati a processi monolitici.

Lo sviluppo di Servo è oggi coordinato in modo aperto, con la documentazione ufficiale, raccolta nel Servo Book, che fornisce istruzioni dettagliate per la compilazione, il contributo e l’integrazione su varie piattaforme. Chiunque può partecipare al progetto, indipendentemente dal livello di esperienza: Servo diventa così un punto di incontro per sviluppatori, ricercatori e appassionati.

Cos’è il “crate” Servo?

Nel linguaggio Rust, un crate è semplicemente un pacchetto di codice: è l’unità base con cui si organizza e si distribuisce software.

Può essere una libreria riutilizzabile (come Servo in questo caso) oppure un programma eseguibile (un’app completa); contiene codice, metadati e dipendenze; viene gestito tramite lo strumento ufficiale chiamato Cargo.

Prima della release 0.1.0, Servo era disponibile soprattutto come codice su GitHub: integrarlo all’interno dei progetti di terze parti richiedeva una serie di operazioni manuali. Dopo la pubblicazione su crates.io, Servo diventa una dipendenza standard, si installa con una riga e si aggiorna con un meccanismo di versioning controllato entrando così ufficialmente nel flusso normale degli sviluppatori Rust.

Embedding: dove Servo appare più interessante

Come evidenziato in precedenza, il punto forte della release non è il browser completo, ma la possibilità di usare il motore come libreria in-process. Per diversi progetti software questa impostazione è più appetibile di un browser standalone: shell applicative, interfacce ibride, strumenti industriali con pannelli HTML, ambienti kiosk, software automotive, piattaforme embedded e applicazioni che vogliono controllare con precisione il ciclo di vita del contenuto Web.

Qui emergono due dettagli tecnici da non trascurare. Il primo riguarda la gestione degli eventi: l’API pubblica elenca strutture per tastiera, mouse, touch, composizione testo e IME, segno che il collegamento con l’interfaccia nativa non è un’aggiunta marginale ma parte integrante del design.

Il secondo riguarda la gestione dello stato: elementi come NetworkManager, SiteDataManager, cache entry e storage type suggeriscono che l’embedder puo’ intervenire su rete, dati locali e politiche di persistenza, un requisito fondamentale quando il motore finisce dentro applicazioni con esigenze di sicurezza o requisiti di conformità differenti da quelli di un browser classico.

Visione innovativa per il futuro del Web

Servo rappresenta oggi uno dei tentativi più maturi di ripensare dalle fondamenta il funzionamento dei motori di rendering, con l’obiettivo di costruire un Web più efficiente, sicuro e parallelo.

Pur essendo ancora un progetto sperimentale, il suo impatto è evidente: molte delle innovazioni testate in Servo – come il layout parallelo e l’isolamento delle componenti – hanno influenzato lo sviluppo di Firefox Quantum e di altre tecnologie di rendering moderne.

Per gli sviluppatori Rust, la novità più importante è una sola: Servo entra nel circuito standard delle dipendenze e offre finalmente un’API di embedding con un nome di versione ufficiale. Il motore espone hook per rete, UI nativa, permessi, navigazione, storage e rendering; supporta configurazioni offscreen e software; eredita l’impostazione memory-safe di Rust e una struttura modulare piuttosto chiara.

Ti consigliamo anche

Link copiato negli appunti