Çalışma Alanları
Çok crate'li projeler
Çalışma Alanları, CoddyKit'te ücretsiz bir Learn Rust Coding dersidir. Bu, 4 dersinin 3. 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.
Çalışma Alanı Nedir?
Bir çalışma alanı, tek bir Cargo.lock dosyasını ve ortak bir target dizinini paylaşan ilişkili paketler kümesidir. Birden çok paket içeren projeleri yönetmenin standart yoludur.
Kök Bildirim Dosyası
Çalışma alanının kökünde, üye paketleri listeleyen bir [workspace] tablosuna sahip Cargo.toml bulunur. Kökün kendisi genellikle bir paket içermez.
[workspace]
members = ["app", "core", "utils"]
resolver = "2"Çalışma Alanı Düzeni
Tipik bir düzen, her paketi kendi alt dizinine yerleştirir:
Cargo.toml— çalışma alanının köküapp/— ikili paketcore/— kitaplık paketiutils/— başka bir kitaplık paketi
Üyeler Oluşturma
Üyeleri diğer paketler gibi oluşturun, ardından kök bildirim dosyasının members listesine ekleyin.
cargo new app
cargo new core --lib
cargo new utils --libBir Üyeye Bağımlı Olma
Bir üye paket, kendi Cargo.toml dosyasındaki path bağımlılığını kullanarak başka bir üye pakete bağımlı olur.
[dependencies]
core = { path = "../core" }
utils = { path = "../utils" }Paketler Arasında Çağrı Yapma
Bir paketteki herkese açık öğeler, paket adına başvurularak başka bir paketten kullanılır. Burada core, ikili paketin çağırdığı bir işlev sunar.
// in core/src/lib.rs
pub fn greeting(name: &str) -> String {
format!("Hello, {name}!")
}
// in app/src/main.rs
fn main() {
let msg = core::greeting("workspace");
println!("{msg}");
}Tüm Çalışma Alanını Derleme
Cargo'yu kökte çalıştırmak, tüm üyeleri derler. Paylaşılan target dizini sayesinde ortak bağımlılıklar yalnızca bir kez derlenir.
cargo build
cargo testTek Bir Üyeyi Hedefleme
Tek bir üye paket için komut çalıştırmak üzere -p (veya --package) kullanın.
cargo run -p app
cargo test -p coreÇalışma Alanı Bağımlılıkları
Paylaşılan sürümleri [workspace.dependencies] altında bir kez tanımlayın, ardından sürümleri eşzamanlı tutmak için bunlara üyelerden başvurun.
# root Cargo.toml
[workspace.dependencies]
serde = "1.0"
# member Cargo.toml
[dependencies]
serde = { workspace = true }Çalışma Alanları Neden Kullanılır?
Bir çalışma alanının avantajları:
- Tutarlı sürümler için tek bir paylaşılan kilit dosyası
- Tek bir paylaşılan hedef dizini sayesinde daha hızlı derlemeler
- Büyük bir projeyi odaklanmış paketlere ayırma kolaylığı
- Her şeyi derleyip test eden tek bir komut
Bir Dizini Dışarıda Bırakma
exclude anahtarı belirli dizinleri çalışma alanının dışında tutarken default-members, -p ile bir seçenek vermediğinizde hangi paketlerin çalıştırılacağını belirler.
[workspace]
members = ["app", "core"]
exclude = ["experiments"]
default-members = ["app"]Hızlı Denetim
Bir çalışma alanındaki tüm paketler neyi paylaşır?
Özet
Çalışma alanları hakkında bilgi edindiniz:
[workspace]tablosu üyeleri listeler- Üyeler birbirine
pathüzerinden bağımlı olur - Paylaşılan kilit dosyası ve hedef dizini derlemeleri hızlandırır
- Tek bir üyeyi hedeflemek için
-pkullanılır [workspace.dependencies]sürümleri merkezileştirir
Sıkça Sorulan Sorular
“Çalışma Alanları” dersi ücretsiz mi?
Evet — “Çalışma Alanları” 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.
“Çalışma Alanları” dersinde ne öğreneceğim?
Çok crate'li projeler 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 3. dersidir.
“Çalışma Alanları” 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
- Cargo Temelleri
- Cargo.toml
- Çalışma Alanları
- Özellikler ve Profiller