Kurs Yapısı
Bu sayfa kurs eğitmenine yöneliktir.
Rust Esasları
İlk dört gün Rust Temelleri’ni oluşturur. Günler hızlı geçiyor ve çok geniş bir konuyu kapsıyoruz!
Kurs programı:
-
- Gün Sabah (2 saat 10 dakika, aralar dahil)
| Bölüm | Süre |
|---|---|
| Hoş Geldiniz | 5 dakika |
| Merhaba, Dünya | 15 dakika |
| Türler ve Değerler | 40 dakika |
| Kontrol Akışı Temelleri | 45 dakika |
-
- Gün Öğleden Sonra (2 saat 45 dakika, aralar dahil)
| Bölüm | Süre |
|---|---|
| Demetler (Tuples) ve Diziler (Arrays) | 35 dakika |
| Referanslar | 55 dakika |
| Kullanıcı Tanımlı Türler | 1 saat |
-
- Gün Sabah (2 saat 50 dakika, aralar dahil)
| Bölüm | Süre |
|---|---|
| Hoş Geldiniz | 3 dakika |
| Desen Eşleştirme | 50 dakika |
| Metotlar ve Özellikler (Traits) | 45 dakika |
| Genelleştirmeler (Generics) | 50 dakika |
-
- Gün Öğleden Sonra (2 saat 50 dakika, aralar dahil)
| Bölüm | Süre |
|---|---|
| Çevreleyiciler (Closures) | 30 dakika |
| Standart Kütüphane Türleri | 1 saat |
| Standart Kütüphanedeki Özellikler (Traits) | 1 saat |
-
- Gün Sabah (2 saat 20 dakika, aralar dahil)
| Bölüm | Süre |
|---|---|
| Hoş Geldiniz | 3 dakika |
| Bellek Yönetimi | 1 saat |
| Akıllı Göstericiler | 55 dakika |
-
- Gün Öğleden Sonra (2 saat 10 dakika, aralar dahil)
| Bölüm | Süre |
|---|---|
| Ödünç Alma | 55 dakika |
| Ömürler (Lifetimes) | 1 saat 5 dakika |
-
- Gün Sabah (2 saat 50 dakika, aralar dahil)
| Bölüm | Süre |
|---|---|
| Hoş Geldiniz | 3 dakika |
| Adımlayıcılar (Iterators) | 55 dakika |
| Modüller | 45 dakika |
| Test Etme | 45 dakika |
-
- Gün Öğleden Sonra (2 saat 20 dakika, aralar dahil)
| Bölüm | Süre |
|---|---|
| Hata İşleme | 55 dakika |
| Emniyetsiz (Unsafe) Rust | 1 saat 15 dakika |
Derin Dalışlar
Rust’ın Esasları hakkındaki 4 günlük derse ek olarak, daha özel konuları da ele alıyoruz:
Android’de Rust
Rust in Android ayrıntılı incelemesi, Android platformu geliştirme için Rust’ı kullanma konusunda yarım günlük bir kurstur. Buna C, C++ ve Java ile birlikte çalışabilirlik (interoperability) de dahildir.
Bir AOSP kasasına ihtiyacınız olacak. Aynı makinede kurs deposunu kontrol edin ve src/android/ dizinini AOSP kasasının kök dizinine taşıyın. Bu, Android inşa (build) sisteminin src/android/ içindeki Android.bp dosyalarını görmesini sağlayacaktır.
adb sync emülatörünüzle veya gerçek cihazınızla çalıştığından emin olun ve tüm Android örneklerini src/android/build_all.sh kullanarak önceden inşa (build) edin. Çalıştırdığı komutları görmek için betiği okuyun ve bunları elle çalıştırdığınızda çalıştıklarından emin olun.
Chromium’da Rust
Chromium’da Rust’ın ayrıntılı incelemesi, Rust’ın Chromium tarayıcısının bir parçası olarak kullanılmasına ilişkin yarım günlük bir kurstur. Bu, Chromium’un gn yapı sisteminde Rust’ın kullanılmasını, üçüncü taraf kitaplıkların (“kasalar/crates”) getirilmesini ve C++ ile birlikte çalışabilirliğini içerir.
Chromium’u derleyebiliyor olmanız gerekecek — hız için bir debug, component inşası (build) önerilir, ancak herhangi bir inşa işlemi de işe yarayacaktır. İnşa ettiğiniz Chromium tarayıcısını çalıştırabildiğinizden emin olun.
Yalın-Sistem (Bare-metal) Rust
Yalın-Sistem Rust ayrıntılı incelemesi, yalın sistem (gömülü) geliştirme için Rust kullanımına ilişkin tam günlük bir derstir. Hem mikrodenetleyiciler hem de uygulama işlemcileri kapsanmaktadır.
Mikrodenetleyici kısmı için BBC micro:bit v2 geliştirme kartını önceden satın almanız gerekecek. Herkesin karşılama sayfasında açıklandığı gibi bir dizi paketi yüklemesi gerekecektir.
Rust’ta Eşzamanlılık
Rust’ta Eşzamanlılık ayrıntılı incelemesi, klasik ve aynı zamanda async/await eşzamanlılığı üzerine tam günlük bir derstir.
Yeni bir kasa (crate) kurulumuna ve bağımlılıkların indirilip kullanıma hazır hale getirilmesine ihtiyacınız olacak. Daha sonra örnekleri denemek için kopyalayıp src/main.rs dosyasına yapıştırabilirsiniz:
cargo init concurrency
cd concurrency
cargo add tokio --features full
cargo run
Kurs programı:
- Sabah (3 saat 20 dakika, aralar dahil)
| Bölüm | Süre |
|---|---|
| İş Parçacıkları (Threads) | 30 dakika |
| Kanallar | 20 dakika |
| Send ve Sync | 15 dakika |
| Paylaşımlı Durum (State) | 30 dakika |
| Alıştırmalar | 1 saat 10 dakika |
- Öğleden Sonra (3 saat 30 dakika, aralar dahil)
| Bölüm | Süre |
|---|---|
| Async Temelleri | 40 dakika |
| Kanallar ve Kontrol Akışı | 20 dakika |
| Tuzaklar | 55 dakika |
| Alıştırmalar | 1 saat 10 dakika |
Rust’ta Tavsiye Edilen Pratikler (Idiomatic)
Rust’ta Tavsiye Edilen Pratikler (Idiomatic) derinlemesine incelemesi,Rust kod kalıpları (idiom) ve desenleri üzerine 2 günlük bir derstir.
Bu kursa başlamadan önce Rust Temelleri dersindeki materyale aşina olmanız gerekir.
Kurs programı:
- Morning (5 hours and 5 minutes, including breaks)
| Bölüm | Süre |
|---|---|
| Tür Sistemini (Type System) Etkin Kullanmak | 5 saat 5 dakika |
Emniyetsiz Rust (Devam Eden Çalışma)
Emniyetsiz Rust derinlemesine incelemesi, unsafe Rust dili üzerine iki günlük bir sınıftır. Rust’ın emniyet garantilerinin temellerini, unsafe motivasyonunu, unsafe kod için inceleme (review) sürecini, FFI temellerini ve ödünç alma denetleyicisinin (borrow checker) normalde reddedeceği veri yapılarını oluşturmayı kapsar.
Kurs programı:
-
- Gün Sabah (1 saat, aralar dahil)
| Bölüm | Süre |
|---|---|
| Kurulum (Setup) | 2 dakika |
| Motivasyonlar | 20 dakika |
| Temeller | 25 dakika |
Format
Kursun çok etkileşimli olması amaçlanıyor ve soruların Rust’ın keşfini yönlendirmesine izin vermenizi öneririz!