Rust, güvenlik, hız ve eşzamanlılığa odaklanan modern bir sistem programlama dilidir. Bu hedefleri, çöp toplama işlemi kullanmadan bellekte güvenli olarak gerçekleştirir.
Buradaki rust örnekleri, çeşitli Rust kavramlarını ve standart kütüphaneleri gösteren çalıştırılabilir örneklerin bir koleksiyonudur. Bu örneklerden daha da fazlasını elde etmek için Rust’u yerel olarak kurmayı ve resmi dokümanlara göz atmayı unutmayın. Ayrıca meraklıları için bu bu siteden Rust’u online olarak çalıştırabilirsiniz.
Şimdi başlayalım!
Rust Çalışma Örnekleri
Örnek 1: Merhaba Dünya
Bu, geleneksel Hello World programının kaynak kodudur.
1 2 3 4 5 | fn main() { println!("Hello, world!"); } |
Çıktı:
1 2 3 | Hello World! |
Örnek 2: Primitives
Rust, çok çeşitli temel veri tiplerine erişim sağlar.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | fn main() { // Değişkenlere açıklama eklenebilir. let _logical: bool = true; let _float: f64 = 1.0; // Düzenli ek açıklama let _integer = 5i32; // Son ek açıklaması // Or a default will be used. let _default_float = 3.0; // `f64` let _default_integer = 7; // `i32` // Bir tür bağlamdan da çıkarılabilir let mut _inferred_type = 12; // İ64 tipi başka bir satırdan çıkarılır _inferred_type = 4294967296i64; // Değişken bir değişkenin değeri değiştirilebilir. let mut _mutable = 12; // Mutable `i32` _mutable = 21; // Hata! Bir değişkenin türü değiştirilemez. // _mutable = true; // Gölgeleme ile değişkenlerin üzerine yazılabilir. let _mutable = true; } |
Örnek 3: Değişken Bağlamalar
Pas, statik yazarak tip güvenliği sağlar. Değişken bağlamalar beyan edildiğinde tipe açıklama eklenebilir. Bununla birlikte, çoğu durumda, derleyici değişkenin türünü bağlamdan çıkarabilir ve ek açıklama yükünü önemli ölçüde azaltır.
Değerler (değişmez değerler gibi) let bağlayıcısı kullanılarak değişkenlere bağlanabilir.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | fn main() { let an_integer = 1u32; let a_boolean = true; let unit = (); let copied_integer = an_integer; println!("Tam sayı: {:?}", copied_integer); println!("Boolean: {:?}", a_boolean); println!("Birim değerini karşılama: {:?}", unit); let _unused_variable = 3u32; let _noisy_unused_variable = 2u32; } |
Çıktı:
1 2 3 4 5 | Tam sayı: 1 Boolean: true Birim değerini karşılama: () |
Örnek 4: if / else
İf-else ile dallanma diğer dillere benzer. Birçoğundan farklı olarak, boolean durumunun parantezle çevrilmesi gerekmez ve her koşulu bir blok izler. if-else koşulları ifadelerdir ve tüm dallar aynı türü döndürmelidir.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | fn main() { let n = 5; if n < 0 { print!("{} negatif", n); } else if n > 0 { print!("{} pozitif", n); } else { print!("{} sıfır", n); } let big_n = if n < 10 && n > -10 { println!(", ve küçük bir sayıdır, on kat artırın"); // This expression returns an `i32`. 10 * n } else { println!(", ve büyük bir sayı, sayıyı yarıya indir"); n / 2 }; println!("{} -> {}", n, big_n); } |
Çıktı:
1 2 3 4 | 5 pozitif, ve küçük bir sayıdır, on kat artırın 5 -> 50 |
Örnek 5: döngü
Rust, sonsuz bir döngüyü belirtmek için bir döngü anahtar sözcüğü sağlar.
break ifadesi herhangi bir anda bir döngüden çıkmak için kullanılabilirken, devam ifadesi yinelemenin geri kalanını atlamak ve yeni bir tane başlatmak için kullanılabilir.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | fn main() { let mut count = 0u32; println!("Sonsuza kadar sayalım!"); // sonsuz döngü loop { count += 1; if count == 3 { println!("üç"); // bu aşamada atla continue; } println!("{}", count); if count == 5 { println!("Tamam yeterli"); // Çıkış yap break; } } } |
Çıktı:
1 2 3 4 5 6 7 8 9 | Sonsuza kadar sayalım! 1 2 üç 4 5 Tamam yeterli |
Kaynak:
https://doc.rust-lang.org/rust-by-example/
https://www.javatpoint.com/rust-tutorial
https://aml3.github.io/RustTutorial/