۱۱
Cargo و Crates
آشنایی با مدیر بسته و سیستم ساخت Rust و استفاده از کتابخانههای دیگران.
Cargo: آچار فرانسه Rust
`Cargo` قلب تپنده اکوسیستم Rust هست. این ابزار چندتا کار مهم رو انجام میده:
- ساخت پروژه (`cargo new`): یه پروژه جدید با ساختار استاندارد برامون میسازه.
- ساخت و کامپایل (`cargo build`): کدهامون رو کامپایل میکنه.
- اجرای پروژه (`cargo run`): کد رو کامپایل و بلافاصله اجرا میکنه.
- اجرای تستها (`cargo test`): تستهایی که نوشتیم رو اجرا میکنه.
- مدیریت وابستگیها: کتابخونههای خارجی (Crates) رو دانلود و مدیریت میکنه.
Crates: کتابخانههای آماده
`Crate` به یه پکیج یا کتابخونه در Rust گفته میشه. مخزن اصلی این کتابخونهها سایت crates.io هست. برای استفاده از یه Crate، فقط کافیه اسم و ورژنش رو به فایل `Cargo.toml` پروژهمون اضافه کنیم.
مثلاً بیاین از کریت `rand` برای تولید یه عدد تصادفی استفاده کنیم.
Cargo.toml
[package]
name = "guessing_game"
version = "0.1.0"
edition = "2021"
[dependencies]
rand = "0.8.5" # این خط رو اضافه میکنیم
src/main.rs
use rand::Rng; // استفاده از کریت
fn main() {
let secret_number = rand::thread_rng().gen_range(1..=100);
println!("The secret number is: {}", secret_number);
}
وقتی `cargo run` رو اجرا میکنید، Cargo به صورت خودکار کریت `rand` و وابستگیهاش رو دانلود و کامپایل میکنه. به همین راحتی!