Rust Nasıl Öğrenilir? Kurulum, İlk Program ve Sahiplik Kavramı
Rust'ı kurmak, cargo ile ilk projeyi çalıştırmak ve en çok korkulan konu olan sahipliği (ownership) sade örneklerle anlamak için başlangıç rehberi.
Rust, hız ve bellek güvenliğini birlikte veren bir sistem programlama dilidir. Tarayıcılarda, işletim sistemi bileşenlerinde, komut satırı araçlarında ve bulut altyapısında giderek daha fazla kullanılıyor.
Öğrenmesi Python'dan zordur; çünkü derleyici sıkı kurallar koyar. Karşılığında çalışan programlarda çökme ve bellek hatası çok daha azdır. Bu rehber ilk gün yapmanız gerekenleri ve en kritik kavramı anlatıyor.
- 7 steps
- 3 min read
-
Rust'ı kurun
Resmi kurulum aracı rustup'tır. macOS ve Linux'ta:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | shWindows'ta rustup.rs adresinden
rustup-init.exedosyasını indirin; Visual Studio Build Tools kurulumunu da isteyebilir. Kurulum sonrası terminali yeniden açıp şunu çalıştırın:rustc --version cargo --versioncargo Rust'ın proje, paket ve derleme aracıdır; günlük işin çoğunu onunla yaparsınız.
-
İlk projeyi oluşturun
cargo new merhaba cd merhaba cargo runsrc/main.rsdosyasında şunu görürsünüz:fn main() { println!("Merhaba, dünya!"); }println!sonundaki ünlem, bunun bir makro olduğunu gösterir. Şimdilik normal bir yazdırma komutu gibi düşünebilirsiniz. -
Değişkenler varsayılan olarak değişmezdir
fn main() { let x = 5; // x = 6; // hata: x değişmez let mut y = 5; // mut: değiştirilebilir y = 6; println!("{x} {y}"); }Bu tasarım kasıtlıdır: değişmeyen veri hatayı azaltır. Değiştirmek istediğinizi
mutile açıkça belirtirsiniz. -
Sahiplik (ownership) kuralını anlayın
Rust'ı Rust yapan kural üç cümledir:
- Her değerin bir sahibi vardır.
- Aynı anda yalnızca bir sahip olabilir.
- Sahip kapsamdan çıkınca değer silinir.
fn main() { let a = String::from("merhaba"); let b = a; // sahiplik b'ye taşındı // println!("{a}"); // hata: a artık geçersiz println!("{b}"); }Çöp toplayıcı olmadan bellek güvenliği bu kuraldan gelir. Derleyici hatayı çalıştırmadan önce yakalar ve genellikle ne yapmanız gerektiğini yazar.
-
Ödünç alma: kopyalamadan paylaşın
fn uzunluk(s: &String) -> usize { s.len() } fn main() { let a = String::from("merhaba"); let n = uzunluk(&a); // & : ödünç ver, sahipliği verme println!("{a} {n}"); // a hâlâ geçerli }&ile bir değeri okuma amaçlı ödünç verirsiniz. Değiştirmek için&mutkullanılır; aynı anda ya birden çok okuyucu ya da tek bir yazıcı olabilir. -
Hata yönetimi: Result ve Option
use std::fs; fn main() { match fs::read_to_string("notlar.txt") { Ok(metin) => println!("{} karakter", metin.len()), Err(e) => println!("Okunamadı: {e}"), } }Rust'ta istisna (exception) yoktur. Hata ihtimali olan işlem
Resultdöner ve onu ele almak zorundasınız. Bu, programların beklenmedik yerde çökmesini engeller. -
Nereden devam edilir?
- The Rust Book (doc.rust-lang.org/book): resmi ve ücretsiz kitap, en iyi başlangıç kaynağı.
- Rustlings: derleyici hatalarını düzelterek ilerlediğiniz küçük alıştırmalar.
- İlk gerçek proje: komut satırında dosya arayan basit bir araç (grep benzeri).
Derleyici hatalarını okumaktan korkmayın; Rust'ın hata mesajları sektörün en açıklayıcıları arasındadır.
Sık Sorulanlar
Rust öğrenmeye değer mi?
Sistem araçları, performans gereken servisler, WebAssembly ve gömülü yazılımla ilgileniyorsanız evet. Web sitesi ya da veri analizi için Python ve TypeScript daha hızlı sonuç verir.
Rust, Go'dan zor mu?
Evet. Go daha hızlı öğrenilir; Rust ise bellek üzerinde daha fazla kontrol ve performans sunar.
İlk dilim Rust olabilir mi?
Olabilir ama zordur. Programlamaya yeni başlıyorsanız önce Python ile temel mantığı oturtmak motivasyonu korur.
Rust için iyi bir editör hangisi?
VS Code ile rust-analyzer eklentisi ücretsizdir ve yeterlidir.
Next guides
Step-by-step guide
Docker Nedir, Nasıl Kullanılır? Kurulum, İlk Container ve Dockerfile Örneği
Docker'ın ne işe yaradığını, kurulumunu, ilk container'ın çalıştırılmasını ve bir Python uygulaması için Dockerfile yazı... Read the guide →
Step-by-step guide
Go (Golang) ile İlk Web Sunucusu: Kurulum ve JSON API Örneği
Go dilini kurup standart kütüphaneyle sıfır paket kullanarak bir web sunucusu ve JSON API yazmayı gösteren başlangıç reh... Read the guide →
Step-by-step guide
SQL Nasıl Öğrenilir? SELECT, WHERE, JOIN ve GROUP BY (Uygulamalı SQLite Rehberi)
SQL'i kurulum derdi olmadan SQLite ile öğrenin: tablo oluşturma, veri ekleme, SELECT, WHERE, JOIN ve GROUP BY örnekleri. Read the guide →
Comments (0)
No comments yet.
Comments are moderated before publishing.