Utilizzo di Rust
ServBay offre agli sviluppatori che desiderano programmare in Rust su macOS un supporto completo e intuitivo per la toolchain. Grazie al sistema di gestione dei pacchetti di ServBay, puoi installare e gestire facilmente l'ambiente di compilazione Rust, che comprende il compilatore rustc
e l'interfaccia di build e gestione pacchetti cargo
.
Panoramica
Introduzione al linguaggio Rust
Rust è un linguaggio di programmazione di sistemi moderno, focalizzato su performance, sicurezza della memoria e concorrenza. Ideato inizialmente da Graydon Hoare dal team di Mozilla Research, è stato reso pubblico nel 2010 con l’arrivo della versione stabile 1.0 nel 2015. Rust mira a fornire le performance e il controllo di C++, ma garantendo la sicurezza della memoria già in fase di compilazione grazie al suo innovativo sistema di ownership e borrowing. In questo modo si evitano problemi comuni dei linguaggi C/C++ come puntatori nulli, dangling pointer e data race, senza bisogno di un garbage collector.
Per via della sua sicurezza, velocità e capacità di gestire la concorrenza, Rust ha conquistato rapidamente popolarità nella community, guadagnandosi per molti anni il titolo di "linguaggio di programmazione più amato" nei sondaggi di Stack Overflow. Viene ampiamente utilizzato in ambiti come lo sviluppo di sistemi, servizi backend web (ad es. Actix Web, Rocket), WebAssembly, strumenti da linea di comando, motori di gioco, sistemi embedded e altro ancora.
Supporto di ServBay per Rust
ServBay gestisce la toolchain Rust come un pacchetto software separato. Questo comporta numerosi vantaggi:
- Installazione semplificata: non è necessario scaricare manualmente i pacchetti o usare
rustup
per configurazioni complesse. L’installazione avviene con un solo click grazie all’interfaccia grafica di ServBay. - Integrazione dell’ambiente: una volta installato, i comandi
rustc
ecargo
sono immediatamente disponibili nel terminale gestito da ServBay. - Gestione centralizzata: tramite l’interfaccia unificata di ServBay puoi gestire Rust insieme ad altri linguaggi di sviluppo, database e strumenti di lavoro.
Questa impostazione rappresenta il punto di partenza ideale per chi sviluppa software di sistema, applicazioni WebAssembly, servizi web ad alte prestazioni o qualsiasi altro progetto Rust.
Accesso al pacchetto Rust
- Apri l’applicazione ServBay.
- Nella barra di navigazione a sinistra, seleziona
Pacchetti (Packages)
. - Nella pagina
Pacchetti
, scorri verso il basso oppure seleziona nella lista a sinistraLanguages
->Rust
. - La sezione a destra mostrerà i pacchetti Rust disponibili. Al momento, ServBay fornisce tipicamente una versione stabile della toolchain Rust.
Installare Rust
Nell’elenco dei pacchetti vengono mostrate le seguenti informazioni sulla toolchain Rust:
- Nome pacchetto: ad esempio
Rust
. - Versione: la versione della toolchain Rust inclusa nel pacchetto (ad esempio 1.86.0).
- Stato: può essere
Installed
(Installato) oNot Installed
(Non installato). - Controlli: pulsanti per le operazioni disponibili.
Per installare la toolchain Rust:
- Verifica che lo stato sia
Not Installed
. - Clicca sull’icona di Download/Install (Scarica/Installa) alla destra della riga (di solito una freccia verso il basso).
- ServBay inizierà il download e l’installazione di Rust.
- Una volta completata l’installazione, lo stato cambierà in
Installed
e l’icona di controllo sarà quella di Uninstall (Disinstalla) (cestino).
Gestire le versioni Rust installate
- Visualizzare la versione installata: lo stato
Installed
e il relativo numero di versione ti confermeranno la versione di Rust in uso. - Disinstallare Rust: se non hai più bisogno dell’ambiente Rust gestito da ServBay, clicca sull’icona Uninstall (Disinstalla) (cestino) corrispondente e conferma l’operazione.
Utilizzo di Rust (Cargo & rustc)
Una volta completata l’installazione, puoi usare i comandi cargo
e rustc
direttamente nel terminale con l’ambiente ServBay attivo.
Esempi di comandi utili:
Verifica della versione del compilatore Rust:
bashrustc --version
1Verifica della versione di Cargo:
bashcargo --version
1Creazione di un nuovo progetto Rust (usando Cargo): Cargo è lo strumento ufficiale per la build e la gestione dei pacchetti Rust: è raccomandato per creare e gestire i tuoi progetti.
bash# Crea un nuovo progetto binario chiamato hello_servbay cargo new hello_servbay --bin cd hello_servbay
1
2
3Questo comando genera la struttura standard del progetto:
Cargo.toml
: file di configurazione (metadati, dipendenze, ecc.).src/main.rs
: file sorgente principale del progetto.
Visualizza
src/main.rs
(contenuto predefinito):rustfn main() { println!("Hello, world!"); }
1
2
3Compilazione ed esecuzione del progetto:
bash# Cargo compila il codice, genera l’eseguibile nella cartella target/debug ed esegue il programma cargo run
1
2Dovresti vedere come output in terminale:
Hello, world!
Solo compilazione del progetto (modalità Debug):
bashcargo build
1L’eseguibile sarà disponibile in
./target/debug/hello_servbay
.Compilazione del progetto (modalità Release ottimizzata):
bashcargo build --release
1L’eseguibile ottimizzato si troverà in
./target/release/hello_servbay
.Aggiunta di dipendenze: Modifica il file
Cargo.toml
e aggiungi le librerie necessarie (note come "crates") nella sezione[dependencies]
. Ad esempio, per integrare il noto framework webactix-web
:toml[dependencies] actix-web = "4" # Specifica il requisito sulla versione
1
2Esegui poi
cargo build
oppurecargo run
; Cargo scaricherà e compilerà le dipendenze automaticamente.
Integrazione server web (deployment di applicazioni web Rust)
Le applicazioni web scritte in Rust (ad esempio utilizzando i framework Actix Web, Rocket, Axum, Tokio, ecc.) vengono generalmente compilate come eseguibili standalone e ad alte performance.
Puoi eseguire direttamente l’eseguibile generato da terminale. Per essere accessibile tramite le porte standard (80/443) e sfruttare la gestione dei domini e SSL offerta da ServBay, la soluzione consigliata è:
- Crea un nuovo Sito web (Website) per la tua applicazione Rust all’interno di ServBay.
- Configura il server web integrato di ServBay (Nginx, Caddy, Apache) come proxy inverso, per indirizzare le richieste dal dominio del sito all’applicazione Rust in ascolto su una porta interna (es.
http://127.0.0.1:8080
). Per maggiori dettagli, consulta la guida al reverse proxy.
Conclusione
ServBay facilita incredibilmente l’installazione e la gestione dei pacchetti Rust, rendendo immediato iniziare a sviluppare in Rust su macOS. Avrai subito a disposizione il compilatore rustc
e il versatile strumento di build cargo
, permettendoti di concentrarti sulla scrittura di codice Rust performante e affidabile. Inoltre, grazie al reverse proxy integrato, anche il deployment di servizi web Rust locali avviene in modo semplice e centralizzato.