Crate'ler ve Crate Kökü
Proje yapısı
Crate'ler ve Crate Kökü, CoddyKit'te ücretsiz bir Learn Rust Coding dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Learn Rust Coding öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Learn Rust Coding kursu toplamda 4 dersten oluşur.
Crate Nedir?
Bir crate, Rust derleyicisinin üzerinde çalıştığı en küçük birimdir. İki türü vardır: çalıştırılabilir dosyaya derlenen bir ikili crate ve başka kodların bağımlı olduğu bir kitaplık crate'i.
İkili ve Kitaplık Karşılaştırması
Bir ikili crate main işlevine sahiptir ve çalıştırabileceğiniz bir program üretir. Bir kitaplık crate'inde main yoktur; başka crate'lerin kullanabileceği yeniden kullanılabilir ögeleri dışa açar.
- İkili kök:
src/main.rs - Kitaplık kökü:
src/lib.rs
Crate Kökü
Crate kökü, derleyicinin işe başladığı kaynak dosyadır. Modül ağacının en üstüdür ve bir yoldaki crate anahtar sözcüğü onu belirtir.
fn main() {
crate::greet();
}
fn greet() {
println!("hello from the crate root");
}Cargo ve Paketler
Bir paket, Cargo tarafından yönetilen ve Cargo.toml içinde açıklanan bir veya daha fazla crate'ten oluşur. Bir paket en fazla bir kitaplık crate'i ve istenilen sayıda ikili crate içerebilir.
Cargo derleme, test çalıştırma ve bağımlılıkları yönetir.
Minimal Cargo.toml
Bildirim dosyası paket adını, sürümünü ve bağımlılıklarını bildirir. Cargo, projenizi nasıl derleyeceğini bilmek için bu dosyayı okur.
[package]— ad, sürüm, sürüm edisyonu[dependencies]— harici crate'ler
Standart Proje Düzeni
Cargo, geleneksel bir yapı bekler:
src/main.rs— ikili crate köküsrc/lib.rs— kitaplık crate köküsrc/bin/— ek ikili dosyalartests/— tümleştirme testleri
Bu geleneğe uymak, hiç yapılandırma gerektirmediği anlamına gelir.
Modüller Kökün Altında Yer Alır
Crate kökü, modül ağacını oluşturan modülleri bildirebilir. Oluşturduğunuz her şey bu tek kök dosyaya bağlanır.
mod utils {
pub fn shout(s: &str) -> String {
s.to_uppercase()
}
}
fn main() {
println!("{}", utils::shout("crate"));
}Dosyalara Bölme
Kök, mod utils; ifadesini noktalı virgülle bildirdiğinde Cargo, src/utils.rs dosyasını yükler. Dosyanın içeriği o modülün gövdesi olur ve birçok dosya boyunca tek bir ağaç korunur.
Bir İkiliden Kitaplık Kullanma
Hem lib.rs hem de main.rs içeren bir pakette ikili, kitaplığa paket adıyla başvurur. Kitaplık, ikilinin kullandığı pub ögelerini dışa açar.
Bu ayrım, mantığı kitaplıkta tutar ve giriş noktasını ince bırakır.
Bağımlılık Ekleme
cargo add rand komutunu çalıştırın veya Cargo.toml içindeki [dependencies] bölümünü düzenleyin. Cargo, crate'i crates.io'dan indirir ve use ile kullanılabilir hâle getirir.
Cargo ayrıca tekrarlanabilir derlemeler için kesin sürümleri Cargo.lock içinde sabitler.
Genel Bakış
Küçükten büyüğe: modül < derleme birimi < paket. Modüller bir derleme birimini düzenler; derleme biriminin kökü ağacı sabitler; paket ve Cargo tüm bunları bir araya getirir.
Hızlı Kontrol
Proje yapısı bilginizi sınayın.
Özet
Proje yapısını öğrendiniz:
- Bir derleme birimi ikili dosya veya kütüphanedir
- Derleme biriminin kökü (
main.rsveyalib.rs) modül ağacını sabitler - Bir paket derleme birimlerini gruplar ve
Cargo.tomltarafından açıklanır - Cargo yerleşimi, derlemeleri ve bağımlılıkları yönetir
Sıkça Sorulan Sorular
“Crate'ler ve Crate Kökü” dersi ücretsiz mi?
Evet — “Crate'ler ve Crate Kökü” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Learn Rust Coding kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Learn Rust Coding kursu toplamda 4 dersten oluşur.
“Crate'ler ve Crate Kökü” dersinde ne öğreneceğim?
Proje yapısı Learn Rust Coding ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Learn Rust Coding öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Learn Rust Coding, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.
“Crate'ler ve Crate Kökü” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Learn Rust Coding dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Learn Rust Coding dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Modüller ve mod
- pub ve Görünürlük
- use ve Yollar
- Crate'ler ve Crate Kökü