Työtilat
Usean craten projektit.
Työtilat on ilmainen Rust-ohjelmoinnin perusteet-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Rust-ohjelmoinnin perusteet-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Rust-ohjelmoinnin perusteet-kurssilla on yhteensä 4 oppituntia.
Mikä workspace on?
Workspace on toisiinsa liittyvien cratejen joukko, joka jakaa yhden Cargo.lock-tiedoston ja yhteisen target-hakemiston. Se on tavanomainen tapa hallita usean craten projekteja.
Juurimanifesti
Workspacen juuressa on Cargo.toml, jonka [workspace]-taulukossa luetellaan jäsencratet. Juuri itsessään ei yleensä sisällä pakettia.
[workspace]
members = ["app", "core", "utils"]
resolver = "2"Workspacen rakenne
Tyypillisessä rakenteessa jokainen crate on omassa alihakemistossaan:
Cargo.toml— työtilan juurihakemistoapp/— binäär cratecore/— kirjasto-crateutils/— toinen kirjasto-crate
Jäsenten luominen
Luotte jäsenet kuten minkä tahansa craten ja lisäätte ne sitten juurimanifestin members-luetteloon.
cargo new app
cargo new core --lib
cargo new utils --libRiippuvuus jäsenestä
Yksi jäsen-crate voi riippua toisesta käyttämällä oman Cargo.toml-tiedostonsa path-riippuvuutta.
[dependencies]
core = { path = "../core" }
utils = { path = "../utils" }Cratejen välinen kutsu
Yhden craten julkisia kohteita käytetään toisesta viittaamalla craten nimeen. Tässä core tarjoaa funktion, jota binääri kutsuu.
// in core/src/lib.rs
pub fn greeting(name: &str) -> String {
format!("Hello, {name}!")
}
// in app/src/main.rs
fn main() {
let msg = core::greeting("workspace");
println!("{msg}");
}Koko työtilan kääntäminen
Kun Cargo suoritetaan juurihakemistossa, se kääntää jokaisen jäsenen. Jaettu target-hakemisto tarkoittaa, että yhteiset riippuvuudet käännetään vain kerran.
cargo build
cargo testYhden jäsenen kohdentaminen
Käyttäkää valitsinta -p (tai --package) suorittaaksenne komennon yhdelle jäsen-cratelle.
cargo run -p app
cargo test -p coreTyötilan riippuvuudet
Määritelkää jaetut versiot kerran taulukossa [workspace.dependencies] ja viitatkaa niihin sitten jäsenistä, jotta versiot pysyvät synkronoituina.
# root Cargo.toml
[workspace.dependencies]
serde = "1.0"
# member Cargo.toml
[dependencies]
serde = { workspace = true }Miksi työtiloja käytetään?
Työtilan hyödyt:
- Yksi jaettu lockfile takaa yhdenmukaiset versiot
- Nopeammat käännökset yhden jaetun target-hakemiston ansiosta
- Suuri projekti on helppo jakaa tarkoituksenmukaisiin crateihin
- Yksi komento kääntää ja testaa kaiken
Hakemiston poissulkeminen
Avain exclude pitää tietyt hakemistot työtilan ulkopuolella, kun taas default-members määrittää, mitkä cratet suoritetaan, kun -p-valitsinta ei anneta.
[workspace]
members = ["app", "core"]
exclude = ["experiments"]
default-members = ["app"]Pikatarkistus
Mitä kaikki työtilan cratet jakavat?
Kertaus
Opitte työtiloista seuraavaa:
- Taulukossa
[workspace]luetellaan jäsenet - Jäsenet riippuvat toisistaan
path-riippuvuuksien avulla - Jaettu lockfile ja target-hakemisto nopeuttavat käännöksiä
- Valitsimella
-pkohdennetaan yksi jäsen [workspace.dependencies]keskittää versioiden hallinnan
Opi Rust tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 39
- Oppitunnit
- 144
Usein kysytyt kysymykset
Onko oppitunti ”Työtilat” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Rust-ohjelmoinnin perusteet-oppimispolun 3 oppituntia, myös oppitunnin “Työtilat”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Rust-ohjelmoinnin perusteet-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Työtilat”?
Usean craten projektit. Harjoittelet Rust-ohjelmoinnin perusteet-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Rust-ohjelmoinnin perusteet-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Rust-ohjelmoinnin perusteet-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.
Kuinka kauan ”Työtilat”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Rust-ohjelmoinnin perusteet-oppitunnilla?
Kyllä. Jokainen Rust-ohjelmoinnin perusteet-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.