0Pricing
Swift Academy · Ders

Actor: Paylaşılan Değiştirilebilir Durumu Koruma

Erişimi serileştirmek ve veri yarışlarını derleme zamanında önlemek için actor kullanın.

Actor: Paylaşılan Değiştirilebilir Durumu Koruma, CoddyKit'te ücretsiz bir Swift Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Swift Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Swift Academy kursu toplamda 4 dersten oluşur.

Hoş Geldiniz

Swift aktörleri, *aktör yalıtımı* kullanarak paylaşılan değişebilir durumu eşzamanlı erişime karşı korur. Elle kilit kullanmadan güvenli eşzamanlılık sağlarlar.

Aktör Tanımlama

```swift actor Counter { var count = 0 func increment() { count += 1 } func value() -> Int { count } } ```

Aktör Durumuna Erişme

```swift let counter = Counter() await counter.increment() // await required for external access let v = await counter.value() ``` Aktörler arası tüm çağrılar eşzamansızdır; aktörün sırasının gelmesini beklerler.

Veri Yalıtımı

```swift actor BankAccount { private var balance: Double = 0 func deposit(_ amount: Double) { balance += amount } func withdraw(_ amount: Double) throws { guard amount <= balance else { throw BankError.insufficient } balance -= amount } } ```

Yalıtılmamış

```swift actor Config { nonisolated let appName: String = "CoddyKit" // safe to access without await var settings: [String:String] = [:] } let name = Config().appName // no await needed ```

@MainActor

```swift @MainActor class ViewController { var label = UILabel() func updateText(_ text: String) { label.text = text // guaranteed on main thread } } ``` `@MainActor`, ana iş parçacığında çalışan özel bir aktördür.

Gönderilebilirlik Gereksinimi

Aktör sınırları arasında aktarılan türler `Sendable` uyumluluğuna sahip olmalıdır: ```swift struct Message: Sendable { var text: String; var timestamp: Date } await actor.receive(message) // safe — Message is Sendable ```

Aktör ve Sınıf

| Özellik | Aktör | Sınıf | |---|---|---| | Eşzamanlılık açısından güvenli | ✓ | ✗ | | Başvuru türü | ✓ | ✓ | | Kalıtım | ✗ | ✓ | | Eşzamansız erişim | ✓ | — |

Aktörler Kilitlenmeye Giremez

Kilitlerin aksine aktörler kilitlenmeye giremez; ancak bir aktör başka bir aktörü beklediğinde ve arada ikinci bir çağrı geldiğinde *aktörlerin yeniden girişine* neden olabilirler.

Küresel Aktörler

```swift @globalActor struct DatabaseActor { static let shared = Actor() actor Actor {} } @DatabaseActor func save() { ... } ```

Kısa Kontrol

Aktör özelliklerine dışarıdan erişim neden `await` kullanılmasını gerektirir?

Tekrar

Temel çıkarımlar: • Aktörler değişebilir durumu korur — aynı anda yalnızca bir görev çalışır • Dışarıdan erişim `await` gerektirir • Güvenli yalıtılmamış üyeler için `nonisolated` kullanılır • `@MainActor` — ana iş parçacığında çalışır; kullanıcı arayüzü için kullanılır • Aktör sınırlarını aşan türler `Sendable` olmalıdır Kurs tamamlandı! Sonraki konu: İleri Düzey Genel Türler.

Sıkça Sorulan Sorular

“Actor: Paylaşılan Değiştirilebilir Durumu Koruma” dersi ücretsiz mi?

Evet — “Actor: Paylaşılan Değiştirilebilir Durumu Koruma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Swift Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Swift Academy kursu toplamda 4 dersten oluşur.

“Actor: Paylaşılan Değiştirilebilir Durumu Koruma” dersinde ne öğreneceğim?

Erişimi serileştirmek ve veri yarışlarını derleme zamanında önlemek için actor kullanın. Swift Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Swift Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Swift Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“Actor: Paylaşılan Değiştirilebilir Durumu Koruma” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Swift Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Swift Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. async/await Söz Dizimi ve Eş Zamanlı İşlev Çağrıları
  2. Task ve Task İptali
  3. async let ve Eş Zamanlı Alt Görevler
  4. Actor: Paylaşılan Değiştirilebilir Durumu Koruma
← Swift Academy Sayfasına Dön