La maggior parte dei programmi ha dipendenze da alcune librerie. Gestirle a mano può essere faticoso. Per fortuna, l'ecosistema Rust include cargo di serie! cargo può gestire le dipendenze di un progetto.
In Rust, capita spesso di sentire chiamare i pacchetti esterni "crate". Un crate è un'unità di compilazione in Rust. Un crate può essere compilato in un binario o in una libreria.
Il più delle volte, aggiungere una dipendenza esterna è semplice come aggiungere una riga al tuo file Cargo.toml.
In questo esercizio, le dipendenze enum-iterator e int-enum sono state aggiunte per te.
Se vuoi costruire qualcosa con un Raspberry Pi, probabilmente userai delle resistenze. Per questo esercizio, devi sapere due cose sul loro conto:
Per aggirare questo problema, i produttori stampano sulle resistenze delle bande colorate che ne indicano il valore di resistenza. Ogni banda ha una posizione e un valore numerico.
Le prime 2 bande di una resistenza seguono uno schema di codifica semplice: ogni colore corrisponde a un singolo numero.
In questo esercizio creerai un programma utile, così non dovrai ricordarti i valori delle bande.
Questi colori sono codificati come segue:
L'obiettivo di questo esercizio è creare un modo per:
Per il primo punto ti servirà il crate esterno int-enum e per il terzo ti servirà enum-iterator.
Sono entrambi già inclusi nel Cargo.toml di questo esercizio.
Dai un'occhiata alla documentazione dei crate per imparare a usarli.
Per completare il secondo punto, puoi dare un'occhiata all'implementazione predefinita del trait Debug per gli Enum.
Le frasi mnemoniche associano i colori ai numeri che, quando memorizzati in un array, finiscono per corrispondere al loro indice nell'array: Better Be Right Or Your Great Big Values Go Wrong.
Puoi trovare maggiori informazioni sulla codifica dei colori delle resistenze nella voce di Wikipedia sul codice dei colori elettronico
Iscriviti a Exercism per imparare e padroneggiare Rust con 99 esercizi e il mentoring di persone reali, tutto gratis.