Cargo ve Crates.io Hakkında Daha Fazlası
Şimdiye kadar kodumuzu derlemek, çalıştırmak ve test etmek için Cargo’nun yalnızca en temel özelliklerini kullandık; ancak Cargo bundan çok daha fazlasını yapabilir. Bu bölümde, aşağıdaki işlemleri nasıl gerçekleştireceğinizi göstermek üzere Cargo’nun daha gelişmiş bazı özelliklerini ele alacağız:
- Sürüm profilleriyle derlemenizi özelleştirme
- Kütüphaneleri crates.io üzerinde yayınlama
- Büyük projeleri çalışma alanlarıyla düzenleme
- crates.io üzerinden
cargo installile ikili dosyaları kurma - Özel komutlarla Cargo’yu genişletme
Cargo, bu bölümde ele aldığımız işlevlerden çok daha fazlasını sunabilir; dolayısıyla tüm özelliklerinin eksiksiz bir açıklaması için Cargo belgelerine göz atabilirsiniz.
Not: Pek çok programlama dilinde derleme sistemi, bağımlılık yöneticisi, test çerçevesi ve belgelendirme üreteci birbirinden bağımsız üçüncü parti araçlar olarak geliştiği için projeden projeye farklı yapılandırmalarla karşılaşmak yaygındır. Rust ekosisteminde ise bu görevlerin tamamını tek ve standart bir araç olarak Cargo üstlenir:
- Cargo.toml ve Cargo.lock dosyaları üzerinden tekrarlanabilir paket ve bağımlılık yönetimi sağlar.
rustcderleyicisini sürüm profillerine göre yönlendirir.cargo testile birim, entegrasyon ve belgelendirme testlerini çalıştırır.cargo docile kaynak koddaki belgelendirme yorumlarından standart HTML API belgeleri üretir.- Çalışma alanı (workspace) düzenleyicisi olarak birbiriyle ilişkili birden çok paketi ortak bir bağımlılık ağacı altında yönetir.
Bu bütünleşik yapı sayesinde herhangi bir açık kaynaklı ya da kurumsal Rust projesini indirdiğinizde, ek bir araç zinciri öğrenmeye gerek kalmadan aynı standart komutlarla derleyebilir, test edebilir ve belgelendirebilirsiniz.