By roberto.martin… |
Rust programming language

the most loved languages


Contenuti dell'articolo

  1. The Rust of the Moon in deep sea
  1. Rust and the Future of Systems Programming | Mozilla ♥ Rust
  2. I principi unificanti alla base di Rust:
  3. Cargo
  4. Rust dall'inizio

The Rust of the Moon in deep sea

Rust creato da Graydon Hoare è un linguaggio di programmazione compilato fortemente tipizzato.

E' un linguaggio nato per un uso piuttosto estremo:

  • sistemi operativi,
  • driver di dispositivi e
  • sistemi embedded.

Esso, anche se nato all'interno di un gruppo della Mozilla Research, è comunque un linguaggio sviluppato in collaborazione con la comunità open-source. I punti di forza sono innanzitutto la sicurezza, la velocità e la gestione della esecuzione concorrente.

Da quanto affermano gli autori di questo linguaggio, Rust è stato sviluppato imparando dagli errori del passato. Le debolezze del software di oggi dipendono dagli errori di programmazione e dalle falle dei linguaggi del passato. Linguaggi come C / C++ non includevano tanti controlli sulla sicurezza, lasciando al programmatore il compito di controllare ogni cosa.

Ovviamente non tutto può essere controllato ed una dimenticanza può far crollare l'intera struttura del software. Quindi avere un linguaggio che in fase di compilazione ti avverte delle possibili debolezze è una grande mano per il programmatore.

Rust è stato scritto per ottenere velocità e stabilità. Steve Donovan lo descrive come sicuro per impostazione predefinita. Secondo lui, i principi di Rust funzionano come guardrail.

Rust and the Future of Systems Programming | Mozilla ♥ Rust

Il gruppo di Mozilla Tech ha pubblicato sei video ed un articolo per comunicare la loro idea di un linguaggio di programmazione orientato al futuro:

Leggi anche: Rust and the Future of Systems Programming

Tuttavia, in realtà è un linguaggio molto piacevole con cui scrivere anche del normale codice per applicazioni.

Molte aziende utilizzano Rust: secondo il libro ufficiale di Rust, i casi d'uso includono 'strumenti a riga di comando, servizi web, strumenti DevOps, dispositivi embedded, analisi e transcodifica audio e video, criptovalute, bioinformatica, motori di ricerca, applicazioni Internet of Things, machine learning e anche alcune parti principali del browser web Firefox. '

I principi unificanti alla base di Rust:

  • applicare rigorosamente il borrowing sicuro dei dati
  • funzioni, metodi e closures per operare sui dati
  • tuple, strutture ed enumerazioni e aggregazione dei dati
  • pattern matching per selezionare e destrutturare i dati
  • caratteristiche (traits) per definire il comportamento sui dati

Cargo

Esiste un ecosistema in rapida crescita di librerie disponibili tramite Cargo.

Come quasi tutti i più moderni linguaggi (python, julia, R ...) anche Rust ha un gestore di pacchetti chiamato Cargo. Ma Cargo ha qualcosa di più....

Molti programmatori usano questo strumento per gestire i propri progetti Rust, con Cargo possiamo creare la struttura di partenza di un nuovo progetto, possiamo scaricare le librerie da cui dipende il tuo codice e possiamo compilare e costruire le applicazioni e nuove librerie, infine possiamo distribuire i nostri progetti e trasferirli su creates.io, il registro delle applicazioni e dei package della comunità Rust.

I programmi Rust più semplici non hanno dipendenze. Però, man mano che i programmi divengono più complessi, sarà necessario aggiungere le dipendenze e se utilizzi sin dall'inizio Cargo per realizzare un progetto, sarà molto più semplice e facile gestire le dipendenze.

Cargo viene fornito con Rust nelle installazioni standard, puoi comunque controllare se Cargo è installato inserendo il seguente comando nel tuo terminale:

$ cargo version
cargo 1.51.0 (43b129a20 2021-03-16)

per imparare ad usarlo leggi The Cargo Book  oppure guarda gli appunti nei capitoli che vengono dopo.

Rust dall'inizio

Il miglior modo per preparare l'ambiente di sviluppo di Rust e creare la prima applicazione è quello di seguire quanto scritto nel sito ufficiale: Per iniziare.

Il nostro tutorial prosegue presupponendo la conoscenza base del linguaggio e degli strumenti di sviluppo.

Ferris

 

Quindi prima di proseguire, se non hai alcuna conoscenza del linguaggio, segui le indicazione degli sviluppatori sul sito : Inizia a sviluppare con Rust

Leggi il libro ufficiale: The Rust Programming Language oppure segui gli appunti che abbiamo tradotto e tratto dal libro.