برمجة

Cargo

ما هو Cargo؟

Cargo أداة البناء والحزم الرسمية لـ Rust. بدأ العمل المفتوح عليه سنة 2014. تثبيت Rust الرسمي يأتي به مع rustc. الحزم تقف في سجل crates.io. Cargo.toml يحفظ اسم المشروع وقائمة الحزم. Cargo.lock يثبت النسخة الدقيقة. cargo build يبني البرنامج. cargo run يشغّل البرنامج المبني. rustc يحوّل كود Rust إلى كود الآلة. Cargo يرتب تلك الخطوات عنك.

فيمَ يُستخدم Cargo؟

Cargo لفتح مشروع Rust جديد وإضافة مكتبة وبناء البرنامج بأمر واحد.

  • فتح مشروع فارغ بـ cargo new
  • كتابة مكتبة في Cargo.toml
  • بناء البرنامج بـ cargo build
  • تشغيل الاختبار بـ cargo test

ماذا يمكن فعله باستخدام Cargo؟

بـ Cargo تنزّل اعتماداً وتفحص الكود وتضع البرنامج الجاهز في مجلد target. هو لا يغيّر قواعد لغة Rust. المترجم يقول الخطأ. Cargo يريك ذلك الخطأ. حزمة لا تعرفها قد تأتي من crates.io وكودها يختلط ببرنامجك.

هل تعلم Cargo صعب؟

فتح المشروع الأول سهل. الصعوبة في النسخة ومدة البناء. الحزمة تجلب حزمة أخرى أيضاً. إذا كانت إحداها أحدث من نسخة Rust عندك يتوقف البناء. إبقاء Cargo.lock في البرنامج للنتيجة نفسها. في المكتبة تثبيته كل مرة ليس الشرط نفسه. مجلد target يكبر.

المزايا والحدود

الميزة: البناء والاختبار والحزمة في أمر واحد والنسخة تبقى في ملف واحد. الحد: البناء الأول قد يطول. Cargo ليس rustc وليس pip. هو أداة مشروع Rust.

أفكار أساسية

Crate اسم الحزمة. Cargo.toml القائمة. rustc المترجم الذي يحوّل الكود.

  • cargo new يفتح مشروعاً
  • cargo build يبني البرنامج
  • Cargo.lock يحفظ النسخة
  • crates.io سجل الحزم

مثال قصير

هذا الأمر يبني مشروع Rust في المجلد الحالي. لا يكتب الكود نفسه.

cargo build

أسئلة شائعة

  • هل Cargo وRust الشيء نفسه؟ لا. Rust اللغة. rustc المترجم. Cargo يجلب الحزمة ويرتب البناء.
  • هل Cargo وpip الشيء نفسه؟ جزء من العمل قريب. Cargo لـ Rust وهو يبني البرنامج أيضاً. pip يثبّت حزمة Python فقط.
  • هل Cargo.toml هو الحزمة نفسها؟ لا. هو الاسم والقائمة. كود الحزمة في ملف منفصل.