🦀 Rust Nedir?
Geliştirici: Mozilla Research (ilk sürüm: 2010, 1.0 kararlı sürüm: 2015)
Amacı: C/C++ seviyesinde hız ve düşük bellek kullanımı sağlarken, güvenli bellek yönetimi sunmak.
Temel Özelliği: “Memory safety” (bellek güvenliği) — çöp toplayıcı (garbage collector) olmadan güvenli bellek yönetimi yapar.
Kullanıldığı Alanlar:
Sistem programlama (işletim sistemleri, çekirdek, donanım sürücüleri)
Oyun motorları
WebAssembly uygulamaları
Blockchain projeleri
Yüksek performanslı web backend servisleri
—
✅ Rust’ın Avantajları
1. Bellek Güvenliği:
Pointer hataları, bellek taşmaları gibi klasik C/C++ sorunlarını engeller.
2. Performans:
Çöp toplayıcı kullanmadan, C kadar hızlı çalışabilir.
3. Concurrency (Çoklu İşlem):
“Fearless Concurrency” yaklaşımıyla, thread güvenliği hatalarını compile-time’da yakalar.
4. Modern Sözdizimi:
Öğrenmesi C++ kadar karmaşık değil, daha okunabilir.
5. Geniş Topluluk ve Araçlar:
Cargo (paket yöneticisi) ve Crates.io (paket deposu) ile geliştirme kolay.
—
👨💻 Örnek Kodlar
1. Hello World
fn main() {
println!(“Merhaba, Rust!”);
}
2. Değişkenler ve Tip Güvenliği
fn main() {
let x: i32 = 10; // değiştirilemez
let mut y: i32 = 20; // mut ile değiştirilebilir
println!(“x = {}, y = {}”, x, y);
y = 30;
println!(“y güncellendi: {}”, y);
}
3. Fonksiyon ve Döngü
fn kare(sayi: i32) -> i32 {
sayi * sayi
}
fn main() {
for i in 1..5 {
println!(“{} sayısının karesi = {}”, i, kare(i));
}
}
4. Ownership (Sahiplik Sistemi – Rust’ın Kalbi)
fn main() {
let s1 = String::from(“Merhaba”);
let s2 = s1; // sahiplik s2’ye geçti, s1 artık kullanılamaz
println!(“{}”, s2);
// println!(“{}”, s1); // ❌ hata: s1 artık geçerli değil
}
—
🌍 Nerelerde Kullanılıyor?
Firefox tarayıcısının parçaları Rust ile yazıldı.
Dropbox, Cloudflare, Microsoft, Amazon, Discord Rust kullanıyor.
Block
chain (Solana gibi) projelerde Rust tercih ediliyor.
Oyun motorları (örn. Bevy Engine) Rust tabanlı.