Kodkitabi

Result ve Hata Yayılımı

Rust içinde result ve hata yayılımı kavramını, kullanım sınırlarını ve güvenilir uygulama biçimini öğrenin.

Result ve Hata Yayılımı, Rust ile hata ve eşzamanlılık çalışırken hata durumlarını denetlenebilir bir akışa dönüştürmek için kullanılan yaklaşımı açıklar. Hata modeli başarısızlığın nerede yakalanacağını, hangi bağlamla taşınacağını ve kullanıcıya nasıl sunulacağını belirler.

Hataları sessizce yutmak yerine özgün nedeni korumak, yalnızca kurtarılabilir noktada yakalamak ve kaynak temizliğini garanti etmek gerekir. İsimlendirme, küçük sorumluluklar ve görünür veri akışı; kodun yalnızca çalışmasını değil, anlaşılmasını da sağlar. Aşağıdaki örnek, konuyu küçük ve izlenebilir bir akış içinde gösterir.

Yaygın hata ve doğru yaklaşım

Girdi, çıktı ve hata sözleşmesini belirsiz bırakmak çağıran kodu kırılgan hâle getirir. Normal akış kadar başarısızlık davranışını da açıkça tasarlayın.

Sonuç

Result ve Hata Yayılımı, doğru sınırlar ve açık bir sözleşmeyle kullanıldığında Rust kodunun güvenilirliğini artırır. Önce doğruluğu kurun; ölçüm göstermeden karmaşık optimizasyona yönelmeyin.

Result ve Hata Yayılımı örneği
use std::{fs, io};

fn read_title(path: &str) -> Result<String, io::Error> {
    let content = fs::read_to_string(path)?;
    Ok(content.lines().next().unwrap_or_default().to_owned())
}