Rust è amato dagli sviluppatori, e questo non è un segreto. Ma l’amore per questo linguaggio va oltre gli sviluppatori, coinvolgendo anche giganti della tecnologia come Apple, Google, Microsoft e molti altri. Queste grandi aziende sembrano adorare Rust per la sua velocità e sicurezza, tanto da essere disposte a abbandonare i loro linguaggi interni, per i quali avevano investito milioni di dollari.
Grazie ai suoi numerosi vantaggi, Rust sta diventando sempre più presente negli stack tecnologici delle grandi aziende. Google, Apple, Microsoft, Meta e molti altri hanno adottato Rust in varie forme e modi. Questo amato linguaggio di programmazione sta colmando un’importante nicchia per le aziende con basi di codice grandi e vecchie: quella di un moderno linguaggio di programmazione a basso livello.
Rust è costantemente classificato tra i primi 5 linguaggi di programmazione più amati al mondo, secondo i sondaggi annuali degli sviluppatori di Stack Overflow. Nel sondaggio del 2020, l’86,1% degli intervistati che aveva utilizzato il linguaggio ha dichiarato di voler continuare a farlo. Esaminando più approfonditamente le capacità di Rust, ci sono alcune ragioni comuni per cui gli sviluppatori amano utilizzare questo software.
Innanzitutto, il ricco set di funzionalità è un enorme attrattiva per gli sviluppatori provenienti da altri linguaggi di programmazione. Rust implementa in modo efficace la programmazione concorrente, consentendo ai programmatori di scrivere codice efficiente che può essere eseguito in parallelo. Inoltre, Rust è estremamente leggero e veloce, con benchmark che lo collocano allo stesso livello di C/C++ in termini di velocità.
Il linguaggio è famoso per essere stato sviluppato con l’attenzione all’esperienza dell’utente, il che ha portato all’inclusione di funzionalità selezionate che potrebbero sembrare “noiose”, ma che sono indispensabili. Funzionalità come i generici, il tipo algebrico, l’interoperabilità FFI con il codice esistente, uno strumento di gestione delle dipendenze robusto e le macro procedurali rendono piacevole lavorare con Rust.
Ma la caratteristica più apprezzata di Rust da parte di programmatori e aziende è la sicurezza della memoria. Il linguaggio dispone di un potente sistema di proprietà che gestisce in modo meticoloso l’allocazione della memoria. Ciò consente agli sviluppatori di scrivere codice estremamente sicuro che può essere distribuito direttamente su sistemi a basso livello. La politica di memoria di Rust è così rigorosa che il linguaggio può fare a meno di un garbage collector in fase di esecuzione, una rarità nei moderni linguaggi di programmazione.
La sicurezza della memoria non è l’unico aspetto in cui Rust eccelle. È un linguaggio a tipizzazione statica, promuove le astrazioni a costo zero, viene compilato in anticipo, ha un footprint di memoria ridotto e può persino essere eseguito su hardware bare-metal. Inoltre, è stato progettato per combinare i vantaggi di molti linguaggi di programmazione diversi. Peter Varo, un ingegnere del software, afferma:
“Rust ha trovato un punto di forza: è di basso livello come C o C++ con tutti i vantaggi di controllo, dimensioni, velocità, ecc. Allo stesso tempo, è di alto livello come Haskell, con una notevole quantità di eredità funzionale. Rimane un linguaggio imperativo, quindi è abbastanza accessibile per la maggior parte delle persone ed è altrettanto flessibile di Python.”
Tuttavia, non basta mettere insieme tutti questi vantaggi. Rust vanta anche una delle comunità più attive nell’ecosistema degli sviluppatori, che si riflette in una vasta gamma di strumenti e framework creati per il linguaggio. Questi vantaggi hanno portato a un’ampia adozione da parte delle grandi aziende tecnologiche.
Ci sono molte aziende che hanno adottato Rust per i loro strumenti interni e le offerte esterne. Dropbox utilizza questo linguaggio di programmazione per alcune parti cruciali delle proprie offerte, grazie alle sue capacità di sicurezza e multithreading. Google utilizza Rust per la programmazione su Android ed ha addirittura reso open source un corso completo su Rust.
Microsoft è un grande sostenitore di Rust e lo utilizza per ridurre i problemi di sicurezza della memoria in Windows. Tuttavia, il maggior sostenitore di Rust è senza dubbio Meta. L’azienda fa parte della fondazione Rust e utilizza ampiamente il linguaggio nei suoi prodotti e servizi. Meta ha anche espresso l’intenzione di impegnarsi a lungo termine con Rust e accogliere i primi utenti. Apple utilizza Rust anche in molti dei suoi progetti, tra cui robotica, ingegneria AR/VR, ingegneria cloud e ingegneria video.
La domanda sorge spontanea: perché queste grandi aziende si rivolgono a Rust dopo aver investito risorse nello sviluppo dei loro linguaggi di programmazione interni? Ad esempio, Google ha creato e diffuso il linguaggio di alto livello Go, ampiamente utilizzato nei suoi prodotti. Allo stesso modo, Apple ha sviluppato Swift, utilizzato per creare app per iOS, macOS e altro ancora. Anche Microsoft spinge internamente C#, ma tutte queste aziende sentono la necessità di utilizzare Rust nonostante abbiano i loro linguaggi.
La ragione principale risiede nella nicchia di programmazione a basso livello in cui Rust eccelle. Molti hanno definito Rust come il primo nuovo linguaggio di sistema da molto tempo, seguendo le orme del C ma con funzionalità moderne. Inoltre, la pratica della programmazione con Rust migliora anche gli sviluppatori in altri linguaggi, grazie alla quantità di best practice che Rust promuove.
In sintesi, l’amore che circonda Rust, insieme alla sua sicurezza della memoria e al ricco set di funzionalità, ha portato alla sua adozione da parte delle grandi aziende. Le sue esclusive capacità di programmazione a basso livello, i bassi requisiti di memoria e le caratteristiche di linguaggio di sistema lo rendono adatto non solo per le applicazioni attuali, ma anche per il futuro dell’informatica.