0Pricing
Learn Rust Coding · Lekcja

Cargo.toml

Manifest i zależności

Cargo.toml to bezpłatna lekcja Learn Rust Coding na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Learn Rust Coding, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Learn Rust Coding zawiera 4 lekcji w sumie.

Manifest

Cargo.toml to plik manifestu znajdujący się w katalogu głównym każdego projektu w Rust. Opisuje pakiet i jego zależności w formacie TOML.

Sekcja [package]

Tabela [package] zawiera metadane crate'a.

  • name — nazwa crate'a
  • version — wersja semantyczna
  • edition — edycja Rusta (np. 2021)
[package]
name = "my_app"
version = "0.1.0"
edition = "2021"

Dodawanie zależności

Zewnętrzne crate'y umieść w sekcji [dependencies]. Cargo pobierze je z crates.io i skompiluje za Ciebie.

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

cargo add

Zamiast edytować plik ręcznie, użyj cargo add, aby dodać zależność w najnowszej zgodnej wersji.

cargo add rand
cargo add serde

Wymagania dotyczące wersji

Oznaczenia wersji korzystają z reguł semver:

  • "1.0" oznacza >=1.0.0 i <2.0.0 (domyślnie operator daszka)
  • "=1.2.3" przypina dokładną wersję
  • "~1.2" zezwala tylko na aktualizacje poprawkowe
[dependencies]
regex = "=1.10.2"
log = "~0.4"

Używanie zależności

Po dodaniu zależności wprowadź jej elementy do zakresu za pomocą use i wywołuj je w kodzie. Tutaj używamy crate'a rand (w rzeczywistym projekcie).

use rand::Rng;

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

Funkcje zależności

Wiele crate'ów udostępnia opcjonalne funkcje. Włącz je za pomocą klucza features, często najpierw wyłączając ustawienia domyślne.

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

Zależności deweloperskie

[dev-dependencies] są kompilowane tylko na potrzeby testów, przykładów i benchmarków — nigdy nie są dołączane do publikowanej biblioteki.

[dev-dependencies]
pretty_assertions = "1.4"

Zależności ze ścieżki i repozytorium Git

Zależności mogą również pochodzić z lokalnej ścieżki lub repozytorium Git zamiast z crates.io.

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

Aktualizowanie zależności

cargo update aktualizuje zależności do najnowszych wersji dozwolonych przez wymagania wersji i przepisuje plik Cargo.lock.

cargo update

Opcjonalne metadane pakietu

Tabela [package] przyjmuje dodatkowe pola, które pojawiają się na crates.io podczas publikowania:

  • authors — autorzy
  • description — krótkie podsumowanie
  • license — identyfikator SPDX, np. MIT
  • repository — adres URL kodu źródłowego
[package]
name = "my_app"
version = "0.1.0"
edition = "2021"
description = "A small demo crate"
license = "MIT"

Szybkie sprawdzenie

Gdzie należy umieścić crate'a potrzebnego tylko podczas uruchamiania testów?

Podsumowanie

Zapoznałeś się z manifestem:

  • [package] zawiera metadane, takie jak nazwa, wersja i edycja
  • [dependencies] deklaruje crate'y z crates.io, ścieżki lub repozytorium Git
  • Oznaczenia wersji podlegają regułom semver
  • features włączają opcjonalne funkcje
  • [dev-dependencies] służą tylko do testów

Często zadawane pytania

Czy lekcja „Cargo.toml” jest bezpłatna?

Tak — pełny tekst „Cargo.toml” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Learn Rust Coding, przejdź na CoddyKit PRO. Kurs Learn Rust Coding zawiera 4 lekcji w sumie.

Co nauczysz się w „Cargo.toml”?

Manifest i zależności Ćwiczysz Learn Rust Coding z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Learn Rust Coding?

Nie wymagamy żadnego doświadczenia. Learn Rust Coding w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „Cargo.toml”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Learn Rust Coding?

Tak. Każda lekcja Learn Rust Coding zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Podstawy Cargo
  2. Cargo.toml
  3. Obszary robocze
  4. Funkcje i profile
← Powrót do Learn Rust Coding