Ruang Kerja
Proyek multi-crate
Ruang Kerja adalah pelajaran Learn Rust Coding gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Learn Rust Coding, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Learn Rust Coding mencakup 4 pelajaran total.
Apa Itu Workspace?
Workspace adalah sekumpulan crate terkait yang berbagi satu Cargo.lock dan direktori target yang sama. Ini adalah cara standar untuk mengelola proyek dengan banyak crate.
Manifes Root
Root workspace memiliki Cargo.toml dengan tabel [workspace] yang mencantumkan crate anggota. Root itu sendiri biasanya tidak memiliki paket.
[workspace]
members = ["app", "core", "utils"]
resolver = "2"Tata Letak Workspace
Tata letak yang umum menempatkan setiap peti di subdirektorinya sendiri:
Cargo.toml— akar ruang kerjaapp/— peti binercore/— peti pustakautils/— peti pustaka lainnya
Membuat Anggota
Anda membuat anggota seperti peti apa pun, lalu menambahkannya ke daftar members dalam manifes akar.
cargo new app
cargo new core --lib
cargo new utils --libBergantung pada Anggota
Satu peti anggota bergantung pada peti lainnya menggunakan dependensi path dalam Cargo.toml-nya sendiri.
[dependencies]
core = { path = "../core" }
utils = { path = "../utils" }Memanggil Lintas Peti
Item publik dalam satu peti digunakan dari peti lain dengan merujuk nama peti tersebut. Di sini core mengekspos fungsi yang dipanggil oleh biner.
// 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}");
}Membangun Seluruh Ruang Kerja
Menjalankan Cargo dari akar akan membangun setiap anggota. Direktori target bersama berarti dependensi umum hanya dikompilasi sekali.
cargo build
cargo testMenargetkan Satu Anggota
Gunakan -p (atau --package) untuk menjalankan perintah pada satu peti anggota.
cargo run -p app
cargo test -p coreDependensi Ruang Kerja
Tentukan versi bersama sekali di bawah [workspace.dependencies], lalu rujuk dari anggota agar versinya tetap selaras.
# root Cargo.toml
[workspace.dependencies]
serde = "1.0"
# member Cargo.toml
[dependencies]
serde = { workspace = true }Mengapa Menggunakan Ruang Kerja?
Manfaat ruang kerja:
- Satu berkas kunci bersama untuk versi yang konsisten
- Pembangunan lebih cepat melalui satu direktori target bersama
- Mudah memecah proyek besar menjadi peti-peti yang berfokus
- Satu perintah membangun dan menguji semuanya
Mengecualikan Direktori
Kunci exclude menjaga direktori tertentu tetap di luar ruang kerja, sedangkan default-members menentukan peti mana yang dijalankan saat Anda tidak memberikan -p.
[workspace]
members = ["app", "core"]
exclude = ["experiments"]
default-members = ["app"]Pemeriksaan Singkat
Apa yang dibagikan oleh semua peti dalam ruang kerja?
Ringkasan
Anda telah mempelajari ruang kerja:
- Tabel
[workspace]mencantumkan anggota - Anggota saling bergantung melalui
path - Berkas kunci dan direktori target bersama mempercepat pembangunan
- Gunakan
-puntuk menargetkan satu anggota [workspace.dependencies]memusatkan versi
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Ruang Kerja” gratis?
Ya — teks lengkap “Ruang Kerja” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Learn Rust Coding, upgrade ke CoddyKit PRO. Kursus Learn Rust Coding mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Ruang Kerja”?
Proyek multi-crate Kamu berlatih Learn Rust Coding dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Learn Rust Coding?
Tidak diperlukan pengalaman sebelumnya. Learn Rust Coding di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.
Berapa lama pelajaran “Ruang Kerja” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Learn Rust Coding ini?
Ya. Setiap pelajaran Learn Rust Coding menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Dasar-Dasar Cargo
- Cargo.toml
- Ruang Kerja
- Fitur dan Profil