Rust Kullanımı
ServBay, macOS üzerinde Rust geliştirmek isteyen geliştiriciler için pratik bir araç zinciri desteği sunar. ServBay'in paket yönetim sistemi sayesinde Rust derleyici ortamını, yani derleyici rustc ve derleme ile paket yöneticisi cargoyu kolayca kurabilir ve yönetebilirsiniz.
Genel Bakış
Rust Diline Giriş
Rust, performans, bellek güvenliği ve eşzamanlılık odaklı modern bir sistem programlama dilidir. İlk olarak Mozilla Research'ten Graydon Hoare tarafından tasarlanmış ve 2010 yılında tanıtılıp, 2015'te 1.0 kararlı sürümü yayınlanmıştır. Rust'ın tasarım amacı, C++'ın sunduğu performans ve kontrolü sağlarken, yenilikçi sahiplik (Ownership) ve ödünç alma (Borrowing) sistemleri sayesinde derleme sürecinde bellek güvenliğini garanti altına almaktır. Böylece, C/C++'ta sıkça karşılaşılan null pointer, asılı pointer ve veri yarışları gibi sorunlardan çöp toplayıcıya (garbage collector) ihtiyaç duymadan kaçınılır.
Güvenliği, hızlı yapısı ve güçlü eşzamanlılık özellikleri sayesinde Rust, geliştirici toplulukları arasında hızla popülerleşmiş; Stack Overflow geliştirici anketlerinde yıllardır "en sevilen programlama dili" seçilmiştir. Rust, sistem programlamadan web arka uç servislerine (Örneğin: Actix Web, Rocket), WebAssembly, komut satırı araçları, oyun motorları ve gömülü sistemlere kadar geniş bir kullanım alanına sahiptir.
ServBay’in Rust Desteği
ServBay, Rust araç zincirini bağımsız bir paket olarak yönetir. Bunun anlamı şudur:
- Kolay Kurulum: Ayrı yükleyiciler indirip manuel kurulum yapmak veya
rustupile karmaşık ayarlar yapmak gerekmeden, ServBay'in grafik arayüzüyle tek tıkla kurulum mümkündür. - Ortam Entegrasyonu: Kurulumun ardından,
rustcvecargokomutları ServBay'in yönettiği terminal ortamına otomatik olarak entegre edilir. - Merkezi Yönetim: Rust ve diğer geliştirme dilleri, veritabanları ve araçlar ServBay’in tek bir arayüzünden yönetilir.
Bu işlevler; sistem programlaması, WebAssembly projeleri, yüksek performanslı web servisleri ya da diğer Rust uygulamalarını geliştirmek isteyenlere kullanışlı bir başlangıç noktası sunar.
Rust Paketine Erişim
- ServBay uygulamasını açın.
- Sol navigasyon menüsünden
Paketler (Packages)sekmesine tıklayın. Paketlersayfasında, aşağıya kaydırın veya sol bölmedekiLanguages->Rustseçeneğini seçin.- Sağdaki alanda mevcut Rust paketleri listelenecektir. ServBay genellikle Rust araç zincirinin bir kararlı sürümünü sunar.

Rust Kurulumu
Paket listesinde Rust araç zincirinin durumu gösterilir:
- Paket Adı: Örneğin
Rust. - Sürüm: Paket içerisinde bulunan Rust araç zincirinin sürüm numarası (örneğin 1.86.0).
- Durum: Durum
Installed(Kurulu) veyaNot Installed(Kurulu Değil) şeklinde gösterilir. - Kontrol: İşlem butonları bulunur.
Rust araç zincirini kurmak için:
- Durumun
Not Installedolduğundan emin olun. - Satırın en sağındaki İndir/Kur (Download/Install) simgesine tıklayın (genellikle aşağıya bakan bir ok).
- ServBay, Rust'ı indirmeye ve kurmaya başlayacaktır.
- Kurulum başarılı olursa durum
Installed(Kurulu) olarak değişir ve kontrol simgesi Kaldır (Uninstall) simgesi (çöp kutusu) olur.
Kurulu Rust’ı Yönetmek
- Kurulu Sürümü Görüntüleme: Listede
Installeddurumunu ve sürüm numarasını görerek mevcut Rust sürümünüzü doğrulayabilirsiniz. - Rust'ı Kaldırma: Eğer ServBay tarafından yönetilen Rust ortamına artık ihtiyacınız yoksa, ilgili Kaldır (Uninstall) simgesine (çöp kutusu) tıklayıp işlemi onaylayabilirsiniz.
Rust Kullanımı (Cargo & rustc)
Kurulum sonrası, ServBay ortamının etkin olduğu terminalde cargo ve rustc komutlarını kullanabilirsiniz.
Sık Kullanılan Komutlar:
Rust Derleyici Sürümünü Kontrol Etme:
bashrustc --version1Cargo Sürümünü Kontrol Etme:
bashcargo --version1Yeni Rust Projesi Oluşturma (Cargo ile): Cargo, Rust'ın resmi derleme aracı ve paket yöneticisidir; proje oluştururken tavsiye edilir.
bash# hello_servbay adında yeni bir ikili proje oluştur cargo new hello_servbay --bin cd hello_servbay1
2
3Bu işlemle tipik bir proje yapısı oluşur:
Cargo.toml: Proje yapılandırma dosyası (meta veriler, bağımlılıklar vb.).src/main.rs: Proje ana kaynak kodu dosyası.
src/main.rsDosyasını Görüntüleme (Varsayılan İçerik):rustfn main() { println!("Hello, world!"); }1
2
3Projeyi Derleyip Çalıştırma:
bash# Cargo, önce kodu derler ve target/debug klasöründe çalıştırılabilir dosya oluşturur, ardından çalıştırır cargo run1
2Terminalde şu çıktıyı görmelisiniz:
Hello, world!Sadece Projeyi Derleme (Debug Modu):
bashcargo build1Çalıştırılabilir dosya
./target/debug/hello_servbayyolunda bulunur.Projeyi Derleme (Release Optimizasyon Modunda):
bashcargo build --release1Optimize edilen dosya
./target/release/hello_servbaykonumunda olur.Bağımlılık Ekleme:
Cargo.tomldosyasının[dependencies]bölümüne ihtiyacınız olan kütüphaneleri ("crates" olarak adlandırılır) ekleyin. Örneğin, popüler bir web çatısı olanactix-webiçin:toml[dependencies] actix-web = "4" # Sürüm gereksinimi belirtin1
2Ardından
cargo buildveyacargo runkomutunu çalıştırın; Cargo bağımlılıkları otomatik indirip derleyecektir.
Web Sunucusu Entegrasyonu (Rust Web Uygulamasını Dağıtma)
Rust ile inşa edilen web uygulamaları (ör. Actix Web, Rocket, Axum, Tokio gibi çatılar kullanılarak) genellikle bağımsız, yüksek performanslı bir çalıştırılabilir dosya olarak derlenir.
Bu derlenmiş ikili dosyayı doğrudan terminalde çalıştırabilirsiniz. Standart portlar (80/443) üzerinden erişim sağlamak ve ServBay'in alan adı yönetimi ile SSL özelliklerinden yararlanmak için önerilen yöntem şudur:
- ServBay’de Rust web uygulamanız için bir Web Sitesi (Website) oluşturun.
- ServBay’in web sunucusunu (Nginx, Caddy, Apache) ters proxy olarak yapılandırarak, ilgili alan adından gelen istekleri, Rust uygulamanızın dinlediği iç porta (örn.
http://127.0.0.1:8080) yönlendirin.
Özet
ServBay, kolay kurulup yönetilebilen Rust paketleriyle, macOS üzerinde Rust geliştirmeye başlama sürecini basitleştirir. Size güçlü rustc derleyicisi ve fonksiyonel cargo yapı aracı sunarak, yüksek performanslı ve güvenilir Rust kodu yazmaya odaklanmanızı sağlar. ServBay’in ters proxy gibi ek yetenekleriyle, yerel Rust web servislerinizi yayınlamak da çok daha kolay hale gelir.
