Nella guida Rust di Google lo stile serve anche ai refactoring
La guida pubblica spiega scelte di API e organizzazione pensate anche per modifiche automatiche su grandi codebase, distinguendo le regole legate a Chromium e Fuchsia.
Che succede
Cambiare un’API in un progetto enorme può richiedere interventi sparsi in tutta la codebase. La guida pubblica di Google per Rust parte anche da questa esigenza: preferisce convenzioni che rendano più semplici le modifiche estese assistite da strumenti automatici.
Per questo parla di progettazione delle API e organizzazione del codice, oltre che di formattazione. Un esempio è l’indicazione di evitare gli import con asterisco, salvo eccezioni: rendono più laboriose le modifiche su larga scala e meno evidente la provenienza di un tipo quando mancano strumenti di navigazione.
La scala del progetto si vede anche nella preferenza per crate piccoli in Chromium, legata al grafo delle dipendenze, alla compilazione parallela e alla cache. Qui la guida esplicita il contesto: alcune regole sono marcate per Chromium o Fuchsia, con indicazioni specifiche per quei progetti.
La guida distingue anche fra codice di libreria e codice di applicazione. Per quest’ultimo invita a evitare generalizzazioni premature: una libreria riutilizzabile e una funzione scritta per un compito specifico hanno esigenze diverse.
Perché conta
Il divieto degli import con asterisco ha una motivazione poco estetica: risparmiare lavoro a chi dovrà modificare il codice su larga scala. Nella guida Rust di Google anche una scelta così minuta tiene conto di persone e strumenti che passeranno molto dopo il primo autore.
Leggi la fonte
Google: Rust Style GuideVuoi sapere di più su pillole come questa?
Nella stessa edizione
Falle del kernel Linux segnalate in pubblico mentre le patch sono ancora in lavorazione
GitHub separa le code di scrittura dei diversi branch
Nella guida Rust di Google lo stile serve anche ai refactoring
Le nuove API Claude cambiano le regole anche senza cambiare modello
GitLab chiude una falla critica che non richiede il login
Node.js corregge Brotli e i controlli dei certificati TLS
Railway invita a cambiare i segreti, con i deploy ancora limitati
Prossima Pillola