In questa appendice verranno raccolte note e indicazioni sulle scelte di
traduzione usate nel corso di questo lavoro.
Come regola generale è stato scelto di tradurre in italiano termini tecnici che
sono di uso comune nella programmazione o in altri linguaggi di programmazione
(funzioni, moduli, ecc…) e mantenere in inglese termini che sono più specifici
del linguaggio Rust e meno comuni.
Seguono alcuni elenchi raggruppati per tipologia, della terminologia usata in
questo libro e della traduzione/non-traduzione con una spiegazione della scelta
se necessario.
Terminologia Termini usati nel libro Spiegazione
Type Type Tipo di dato.
Reference Reference / RiferimentoRiferimento ad una variabile
Integer Intero / Integer Usato sia tradotto che originale quando necessario.
Float Float Numero in virgola mobile, usato il termine originale per brevità.
Boolean Booleano
Struct Struct
Enum Enum Usato termine originale per brevità rispetto a enumerazione.
Tuple Tupla / Tuple
Collection Collezione
Array Array specificatamente riferito al type Array
Vector Vettore specificatamente riferito al type Vec
Hash Map Hash Map Mappa hash
Slice Slice Riferimento ad una porzione di dati
String Slice Slice di stringaRiferimento ad una porzione di stringa
Trait Trait Tratto, Caratteristica
Trait Bound Vincolo di Trait
Handle Handle Puntatore ad un thread/processo
String literal Letterale stringa
Numeric literal Letterale numerico
Terminologia Termini usati nel libro Italiano
Ownership Ownership Possesso / Proprietà di una variabile sui dati che contiene.
Borrow Checker Borrow Checker / Controllo dei prestitiFunzionalità del compilatore Rust per verificare la consistenza dei riferimenti.
Borrowed Type Type Preso in prestitoTipo di dato di cui si è ricevuta la ownership .
Owned Type Type posseduto / Type con ownership
Borrowing Rules Regole di prestito
Lifetime Lifetime / LongevitàUsato sia termine originale che tradotto per facilità di lettura.
Terminologia Termini usati nel libro Italiano
Crate Crate Contenitore. Mantenuto termine originale per semplicità
Package Pacchetto
Path Path / PercorsoPercorso file o moduli
Root Root / Radice / Cartella principale
Workspace Workspace / Spazio di lavoroSpazio di lavoro gestito da Cargo
Namespace
Runtime Esecuzione Usato quando si intende l’esecuzione di un programma ecc.
Runtime Runtime Usato quando si intende il gestore dei blocchi asincroni (Capitolo 16-17 ecc.)
Closure Chiusura Termine che si trova anche in altri linguaggi.
Scope Scope Ambito di validità.
Environment Ambiente Riferito alle chiusure.
Refactoring Refactoring / RiscritturaRiscrivere, spostare parte del codice.
Panic Panic Mantenuto il termine originale perché in italiano faceva ridere ;-D
Return Restituire / Ritornare
Return Value Valore di ritorno / Valore restituito
Iterator Iteratore
Iterator Adapter Adattatore Sarebbe “Adattatore all’iteratore”
Consuming Adapter Consumatore Sarebbe “Adattatore all’iteratore che consuma l’adattatore”
Lazy Lazy Pigro / Pigrizia
Terminologia Termini usati nel libro Italiano
Concurrency Concorrenza
Async Async / AsincronoUsato il termine originale quando specificamente richiesto, tradotto quando usato nella descrizione meno approfondita.
Thread Thread Mantenuto termine originale per semplicità.
Task Task Mantenuto termine originale per semplicità.
Spawned Thread/Task Thread /Task Generato
Future Future Mantenuto termine originale per semplicità.
Stream Stream Mantenuto termine originale per semplicità.
Per la gerarchia tra moduli sono utilizzati termini che si rifanno alla vita reale:
Originale Tradotto
Parent Genitore
Child Figlio
Ancestor Antenato