0Pricing
Learn Rust Coding · Lezione

Cargo.toml

Manifest e dipendenze

Cargo.toml è una lezione Learn Rust Coding gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Learn Rust Coding, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Learn Rust Coding include 4 lezioni in totale.

Il manifest

Cargo.toml è il file manifest nella radice di ogni progetto Rust. Descrive il pacchetto e le sue dipendenze usando il formato TOML.

La sezione [package]

La tabella [package] contiene i metadati del crate.

  • name — il nome del crate
  • version — la versione semantica
  • edition — l'edizione di Rust (ad esempio 2021)
[package]
name = "my_app"
version = "0.1.0"
edition = "2021"

Aggiungere dipendenze

Elenchi i crate esterni nella sezione [dependencies]. Cargo li scarica da crates.io e li compila al posto Suo.

[dependencies]
rand = "0.8"
serde = "1.0"

cargo add

Invece di modificare il file manualmente, utilizzi cargo add per inserire una dipendenza con la versione compatibile più recente.

cargo add rand
cargo add serde

Requisiti di versione

Le stringhe di versione usano le regole semver:

  • "1.0" significa >=1.0.0 e <2.0.0 (caret per impostazione predefinita)
  • "=1.2.3" fissa una versione esatta
  • "~1.2" consente solo aggiornamenti della patch
[dependencies]
regex = "=1.10.2"
log = "~0.4"

Usare una dipendenza

Dopo averla aggiunta, porti gli elementi nell'ambito con use e li utilizzi nel codice. Qui usiamo il crate rand (in un progetto reale).

use rand::Rng;

fn main() {
    let mut rng = rand::thread_rng();
    let n: u8 = rng.gen_range(1..=6);
    println!("Rolled a {n}");
}

Feature delle dipendenze

Molti crate espongono feature opzionali. Le abiliti con la chiave features, spesso disattivando prima quelle predefinite.

[dependencies]
serde = { version = "1.0", features = ["derive"] }

Dipendenze di sviluppo

Le [dev-dependencies] vengono compilate solo per test, esempi e benchmark — non vengono mai incluse nella libreria distribuita.

[dev-dependencies]
pretty_assertions = "1.4"

Dipendenze da percorso e Git

Le dipendenze possono provenire anche da un percorso locale o da un repository Git, invece che da crates.io.

[dependencies]
my_lib = { path = "../my_lib" }
some_crate = { git = "https://github.com/user/repo" }

Aggiornare le dipendenze

cargo update aggiorna le dipendenze alle versioni più recenti consentite dai requisiti di versione e riscrive Cargo.lock.

cargo update

Metadati opzionali del pacchetto

La tabella [package] accetta campi aggiuntivi che vengono visualizzati su crates.io quando pubblica il pacchetto:

  • authors — chi lo ha scritto
  • description — un breve riepilogo
  • license — un identificatore SPDX come MIT
  • repository — l'URL del codice sorgente
[package]
name = "my_app"
version = "0.1.0"
edition = "2021"
description = "A small demo crate"
license = "MIT"

Verifica rapida

Dove deve essere elencato un crate necessario solo durante l'esecuzione dei test?

Riepilogo

Ha esplorato il manifest:

  • [package] contiene metadati come nome, versione ed edizione
  • [dependencies] dichiara crate provenienti da crates.io, da un percorso o da Git
  • Le stringhe di versione seguono le regole semver
  • features abilita funzionalità opzionali
  • [dev-dependencies] contiene dipendenze utilizzate solo per i test

Domande Frequenti

La lezione «Cargo.toml» è gratuita?

Sì — il testo completo di «Cargo.toml» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Learn Rust Coding, passa a CoddyKit PRO. Il corso Learn Rust Coding include 4 lezioni in totale.

Cosa imparerò in «Cargo.toml»?

Manifest e dipendenze Eserciti Learn Rust Coding con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Learn Rust Coding?

Non è richiesta alcuna esperienza precedente. Learn Rust Coding su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.

Quanto tempo richiede la lezione «Cargo.toml»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Learn Rust Coding?

Sì. Ogni lezione Learn Rust Coding include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Fondamenti di Cargo
  2. Cargo.toml
  3. Workspace
  4. Feature e profili
← Torna a Learn Rust Coding