Rust

Rust

BACKEND

Sahiplik sistemi aracılığıyla garbage collector olmadan bellek güvenliği garantileri sunan sistem programlama dili. Sıfır maliyetli soyutlamalarla C/C++ eşdeğeri performans, veri yarışları olmadan eşzamanlılık ve güvenilir backend API, WebAssembly ve kritik sistemler oluşturmak için zengin ekosistem (Cargo, crates.io).

Ne öğreneceksin

Derleme zamanında garantili bellek güvenliği için sahiplik sistemi (garbage collector yok)

Sıfır maliyetli soyutlamalar ve düşük seviye kontrol ile C/C++ performansı

Tip sistemi sayesinde veri yarışları olmadan eşzamanlılık (Send, Sync trait)

Anlamlı pattern matching, güçlü enum ve hata yönetimi için Result<T, E>

Bağımlılık yönetimi, build ve entegre test için Cargo

Engellemeyen G/Ç için Tokio veya async-std ile async/await

REST API için modern web framework (Axum, Actix-web, Rocket)

Trait, generic, lifetime ve tip çıkarımı ile güçlü tip sistemi

Kapsamlı test (birim testler, entegrasyon testleri, doc testler, özellik tabanlı)

Birinci sınıf WebAssembly desteği, çapraz derleme ve optimize ikili dosyalar

Uzmanlaşılması gereken temel konular

Bu teknolojiyi anlamak ve mülakatlarını başarmak için en önemli kavramlar

1

Rust temelleri: değişkenler (let, mut), ilkel tipler, fonksiyonlar, modüller

2

Sahiplik: taşıma semantiği, ödünç alma, referanslar (&, &mut), lifetime

3

Ödünç alma kuralları: bir &mut VEYA birden çok &, sarkan referans yok

4

Struct, enum, pattern matching ve yıkım

5

Trait: tanım, uygulama, trait sınırları, derive makroları

6

Generic: generic fonksiyonlar, struct, trait sınırlı enum

7

Lifetime: açıklamalar ('a), lifetime elision, static lifetime

8

Hata yönetimi: Result<T, E>, Option<T>, ? operatörü, panic vs Result

9

Koleksiyonlar: Vec, HashMap, HashSet, iterator ve metotlar (map, filter, collect)

10

Iterator: Iterator trait, tembel değerlendirme, birleştiriciler, for döngüleri

11

Sahiplik kalıpları: Clone vs Copy, Rc/Arc, iç değiştirilebilirlik için RefCell/Mutex

12

Eşzamanlılık: thread, Arc<Mutex<T>>, channel (mpsc), Send/Sync trait

13

Async/await: Future trait, async fn, .await, Tokio runtime, async görevler

14

Axum/Actix-web: yönlendirme, handler, extractor, middleware, durum yönetimi

15

Veritabanı: sqlx (derleme zamanı kontrolü), Diesel ORM, async sorgular

16

Serileştirme: serde (Serialize, Deserialize), JSON, derive makroları

17

Test: #[test], #[cfg(test)], assert!, entegrasyon testleri, mock

18

Makrolar: deklaratif makrolar (macro_rules!), prosedürel makrolar, derive

19

Bellek güvenliği: null pointer yok, buffer overflow yok, thread güvenliği

20

Performans: sıfır maliyetli soyutlamalar, inlining, LLVM optimizasyonları, profilleme

21

Cargo: bağımlılıklar (Cargo.toml), feature, workspace, build script

22

Dağıtım: çapraz derleme, Docker, statik ikili dosyalar, release profilleri