Servizi sviluppo software con Rust

Rust è un linguaggio di programmazione che permette di creare sistemi complessi, altamente sicuri e affidabili.

Statistiche Rust

Le tecnologie più popolari fra quelle usate in Develer
(dati estrapolati dal sondaggio Stack Overflow 2022)

Motivi per introdurre Rust in azienda

Sviluppato da Mozilla Research, Rust pone una forte attenzione alla sicurezza e all’affidabilità.

Ad oggi, è ancora un linguaggio di nicchia, non molto usato in ambiente industriale, ma offre vantaggi importanti rispetto ai linguaggi maggiormente diffusi.

Differenze con C e C++

Anche se possiamo collocarlo nella famiglia del C e del C++, ha ereditato dai linguaggi più moderni una serie di tool che aiutano nelle attività correlate alla programmazione.
Inoltre, è un linguaggio che parte già opinionato: questo toglie l’onere della scelta a chi sviluppa. Ne consegue un risparmio di tempo e una maggiore produttività, perché ci si può concentrare sul problema e non sull’infrastruttura di contorno.
E, infine, “Make impossible states impossible” (Rendere impossibili gli stati impossibili): la sua ricca semantica permette di individuare, codificare e gestire tutta una serie di bug prima che si presentino.
Il compilatore è “developer friendly”: contestualizza gli errori ed esegue una prima review del codice (insieme a Clippy, tool che fa controlli di più alto livello). Caratteristiche che rendono Rust utilizzabile anche da chi ha poca esperienza con questo linguaggio.

Un’ultima considerazione: tante comunità open source sviluppano tool per integrare C o C++ con Rust, quindi è quasi più semplice passare da C o C++ a Rust che da C a C++.

Differenze con Go

Sia Go (Golang) che Rust sono concepiti per facilitare la scrittura di codice sicuro.
In Rust, lo sviluppatore ha il controllo completo della gestione della memoria: è possibile vedere chiaramente nel codice quando i dati vengono liberati. Inoltre, la gestione della memoria in Rust è nota in fase di compilazione.
Go, invece, utilizza il concetto di garbage collector: i dati non vengono liberati immediatamente, ma un processo in background li rilascia quando la quantità di dati allocati raggiunge un valore specificato. Il garbage collector di Go è ben ottimizzato, ma è meno prevedibile della gestione della memoria di Rust.

Vantaggi

Prestazioni

Veloce ed efficiente nel consumo di memoria

Icona Produttività

Produttività

Linguaggio moderno e tool per la gestione dei principali flussi di sviluppo

Icone Sicurezza

Sicurezza

Permette di eliminare molteplici bug già in fase di compilazione

Perché scegliere Develer

  • Abbiamo abbracciato questa tecnologia fin dalla prima versione
  • Organizziamo dal 2019 RustLab, la conferenza internazionale su Rust tenuta in Italia
  • Abbiamo portato avanti diversi progetti in Rust
  • Possiamo integrare progetti già scritti in C o C++ oppure riscriverli completamente in Rust
  • I nostri programmatori contribuiscono all’ecosistema di Rust

Rust agli eventi Develer

La conferenza dedicata al linguaggio Rust, organizzata da Develer

>> Scopri RustLab