Rust Ekosistemi

Rust ekosistemi bir dizi araçtan oluşur; bunların başlıcaları şunlardır:

  • rustc: .rs dosyalarını ikili (binary) dosyalara ve diğer ara biçimlere (format) dönüştüren Rust derleyicisi.

  • cargo: Rust bağımlılık yöneticisi ve inşa (build) aracı. Cargo, genellikle https://crates.io üzerinde barındırılan bağımlılıkları nasıl indireceğini bilir ve projenizi oluştururken bunları rustc derleyicisine aktarır. Cargo ayrıca birim testlerini yürütmek için kullanılan yerleşik bir test çalıştırıcısıyla birlikte gelir.

  • rustup: Rust araç zinciri (toolchain) yükleyicisi ve güncelleyicisi. Bu araç, Rust'ın yeni sürümleri yayınlandığında rustc ve cargo programlarını yüklemek ve güncellemek için kullanılır. Ek olarak, rustup standart kitaplık için belgeleri de indirebilir. Aynı anda birden fazla Rust sürümünü yükleyebilirsiniz ve rustup gerektiğinde bunlar arasında geçiş yapmanıza olanak tanır.

Anahtar noktalar:

  • Rust'un her altı haftada bir yeni sürümünün çıktığı hızlı bir sürüm programı var. Yeni sürümler, eski sürümlerle geriye dönük uyumluluğu korur ve ayrıca yeni işlevsellik sağlar.

  • Üç sürüm kanalı vardır: "kararlı (stable)", "beta" ve "gecelik (nightly)".

  • Yeni özellikler "gecelik (nightly)" kanalında test ediliyor, "beta" her altı haftada bir "kararlı (stable)" hale geliyor.

  • Bağımlılıklar ayrıca alternatif olarak kayıtlardan, git'ten, klasörlerden ve daha fazlasından çözülebilir.

  • Rust'ın ayrıca yayınları (editions) vardır: mevcut yayın (edition) Rust 2021'dir. Önceki yayınlar Rust 2015 ve Rust 2018'di.

    • Yayınların dilde geriye dönük olarak uyumsuz değişiklikler yapmasına izin verilir.

    • Kodun kırılmasını (breaking code) önlemek için yayınlar isteğe bağlıdır: Cargo.toml dosyası aracılığıyla kasanızın (crate) sürümünü seçersiniz.

    • Ekosistemin bölünmesini önlemek için Rust derleyicileri farklı sürümler için yazılan kodları karıştırabilir.

    • Derleyiciyi cargo yoluyla değil de doğrudan kullanmanın oldukça nadir olduğunu unutmayın (çoğu kullanıcı asla kullanmaz).

    • Cargo'nun kendisinin son derece güçlü ve kapsamlı bir araç olduğunu belirtmekte fayda var. Aşağıdakiler dahil olmakla ve bunlarla sınırlı olmamak üzere birçok gelişmiş özelliğe sahiptir:

    • Resmi Cargo Kitabı'ndan daha fazlasını okuyun