İçeriğe geç
parazade

Rust Nedir?

Yayın: · Son güncelleme:

Rust Nedir? Kısaca

Rust, bellek güvenliğini çöp toplayıcıya ihtiyaç duymadan derleme anında denetleyen, hızlı ve sistem seviyesinde çalışan bir programlama dilidir. C ve C++'ın kullanıldığı alanlara güvenli bir alternatif olarak öne çıkar.

Rust nedir?
İçindekiler
  1. Rust nedir?
  2. Nerelerde kullanılır?
  3. Öğrenmenin zorlukları

Rust nedir?

Rust, ilk olarak Mozilla bünyesinde geliştirilen ve 2015'te kararlı sürümü yayımlanan, derlenen bir sistem programlama dilidir. Amacı, C ve C++ kadar hızlı olurken bellek hatalarını baştan engellemektir. Bugün bağımsız bir vakıf tarafından yönetilir ve paket yöneticisi Cargo ile birlikte gelir.

Bunu "sahiplik" (ownership) adı verilen bir kurallar bütünüyle yapar. Her verinin tek bir sahibi vardır ve derleyici, verinin kim tarafından ne zaman kullanılabileceğini derleme sırasında kontrol eder. Kural ihlal edilirse program hiç derlenmez.

Nerelerde kullanılır?

Tarayıcı motorları, işletim sistemi bileşenleri, komut satırı araçları ve yüksek performans isteyen ağ servisleri Rust'ın güçlü olduğu alanlardır. WebAssembly sayesinde tarayıcıda hızlı çalışan modüller yazmak için de tercih edilir.

Örneğin büyük log dosyalarını saniyeler içinde tarayan bir araç düşünün. Rust ile yazıldığında hem hızlı çalışır hem de bellek sızıntısı ya da geçersiz bellek erişimi riski büyük ölçüde azalır.

Öğrenmenin zorlukları

Rust'ın öğrenme eğrisi diğer pek çok dilden diktir. Yeni başlayanlar ilk haftalarda derleyicinin "ödünç alma" (borrow) hatalarıyla sık karşılaşır.

Bu hataların mesajları açıklayıcıdır, dikkatle okumak çoğu zaman çözümü gösterir. Sabırlı olursanız birkaç hafta içinde derleyiciyle kavga etmek yerine onu bir yardımcı gibi görmeye başlarsınız. Resmî kitap olan "The Rust Programming Language" ücretsizdir ve başlangıç için iyi bir kaynaktır.

Sıkça Sorulan Sorular

Rust, C++'ın yerini alır mı?

Bazı projelerde kademeli olarak C++ yerine Rust tercih ediliyor, ama devasa C++ kod tabanları uzun yıllar kullanılmaya devam edecek. İki dil bir süre yan yana yaşayacak gibi görünüyor.

Rust ilk programlama dili olarak uygun mu?

Mümkün ama zorlayıcıdır. Programlama temellerini Python gibi daha esnek bir dille öğrenip sonra Rust'a geçmek çoğu kişi için daha rahat bir yoldur.

İlgili terimler

Bellek Yönetimi(Memory Management)Bellek yönetimi, bir programın çalışırken ihtiyaç duyduğu belleği ayırma, kullanma ve işi bitince geri verme sürecidir. Bu iş dile göre ya geliştirici tarafından elle ya da çöp toplayıcı gibi otomatik mekanizmalarla yapılır.C Programlama Dili(C)C, 1970'lerin başında Bell Laboratuvarları'nda geliştirilen, donanıma yakın çalışan, derlenen ve genel amaçlı bir programlama dilidir. İşletim sistemleri, sürücüler ve gömülü sistemlerde hâlâ yaygın kullanılır.Derleyici(Compiler)Derleyici (compiler), bir programlama diliyle yazılmış kaynak kodun tamamını çalıştırmadan önce makine koduna ya da ara koda çeviren yazılımdır. C, Go ve Rust gibi diller derleyiciyle çalışır.Programlama(Programming)Programlama, bir problemi bilgisayarın uygulayabileceği net ve sıralı adımlara bölüp bu adımları bir programlama diliyle yazma işidir. Ortaya çıkan talimatlar dizisine program denir.Paket Yöneticisi(Package Manager)Paket yöneticisi, yazılım paketlerini ve kütüphaneleri tek komutla kurmayı, güncellemeyi ve kaldırmayı sağlayan araçtır. Bir paketin ihtiyaç duyduğu diğer paketleri de otomatik olarak bulup yükler.Bellek Sızıntısı(Memory Leak)Bellek sızıntısı (memory leak), bir programın artık ihtiyaç duymadığı belleği serbest bırakmaması sonucu RAM kullanımının zamanla sürekli artmasıdır. Uzun süre çalışan uygulamalarda yavaşlamaya ve çökmelere yol açar.