Delineare l'applicazione

Completato

Prima di iniziare a scrivere il codice, è opportuno dedicare un po' di tempo per pensare a tutti gli elementi che dovrebbero essere implementati per questa applicazione. Si tratta di un'app journal da riga di comando per gestire attività. Non è necessario preoccuparsi di interfacce elaborate, ma sarà indispensabile gestire e analizzare gli argomenti della riga di comando per interpretare le azioni che gli utenti invieranno alla riga di comando.

L'interfaccia del programma gestirà queste tre azioni:

  • Aggiungere nuove attività a un elenco.
  • Rimuovere le attività completate da tale elenco.
  • Stampare tutte le attività correnti presenti nell'elenco.

Il programma salverà in modo permanente le attività in una risorsa di archiviazione. Poiché un file di testo dovrebbe essere adatto per archiviare questo tipo di dati, è possibile scegliere un formato di file come JSON per codificare le informazioni. Sarà necessario gestire il salvataggio e il recupero dei dati dalla risorsa di archiviazione.

Ora che sono stati specificati i casi d'uso dell'applicazione, è possibile allocare ogni azione nel modulo specifico. È consigliabile avere moduli per l'analisi della riga di comando e per la persistenza delle attività e quindi usare il modulo main.rs per collegarli e gestire tutti i possibili errori.

Poiché si modificheranno le attività, è consigliabile avere anche uno struct Task per tenere traccia di ogni attività.

Detto questo, si creerà il modello di progetto iniziale. Nell'ambiente di sviluppo locale creare un nuovo progetto Cargo usando il comando cargo new nel terminale. Assegnare al progetto il nome rusty-journal.

$ cargo new rusty-journal
     Created binary (application) `rusty-journal` package

Nelle unità seguenti verranno aggiunti al programma nuovi moduli, tipi e funzioni.