0Pricing
SwiftUI Academy · Ders

@Observable Makrosu

Görünümlerin izleyebilmesi için bir sınıfı gözlemlenebilir hâle getirin.

@Observable Makrosu, CoddyKit'te ücretsiz bir SwiftUI Academy dersidir. Bu, 4 dersinin 2. 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, SwiftUI Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. SwiftUI Academy kursu toplamda 4 dersten oluşur.

Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.

The Problem to Solve

A plain model class holds data, but SwiftUI will not redraw when that data changes. We need to make the class observable.

Meet @Observable

The @Observable macro marks a class so SwiftUI watches its properties and refreshes any view that reads them. ✨

@Observable
class Counter {
    var count = 0
}

What a Macro Does

A macro generates extra code for you at compile time, so one short attribute adds all the change-tracking plumbing.

Importing Observation

The macro lives in the Observation framework, so add an import at the top of the file before you use it.

import Observation

@Observable
class Counter { var count = 0 }

No Wrappers Needed

With @Observable you mark plain stored properties. No per-property wrapper is required for SwiftUI to track them.

@Observable
class Counter {
    var count = 0
    var name = "Taps"
}

Reading Triggers Tracking

SwiftUI only refreshes for the properties a view actually reads in its body, so unused values cost you nothing.

Writing Triggers Updates

When you change a tracked property, every view that reads it is automatically scheduled to redraw.

model.count += 1  // views reading count refresh

Computed Properties Work Too

A computed property built from tracked values also updates views, since reading it reads its inputs.

@Observable
class Counter {
    var count = 0
    var label: String { "Taps: \(count)" }
}

Granular by Default

Tracking is granular: changing one property only refreshes views that read that property, not the whole screen.

Replacing ObservableObject

@Observable is the modern replacement for the older ObservableObject plus @Published pattern, with far less boilerplate.

Ignoring a Property

Mark a value with @ObservationIgnored when it should not trigger updates, like a cache or internal scratch value.

@Observable
class Counter {
    @ObservationIgnored var cache = 0
}

Quick Check

Time to check your grip on @Observable.

Recap

You made a model @Observable, so SwiftUI tracks the properties your views read and redraws them precisely when those values change. 🎉

Sıkça Sorulan Sorular

“@Observable Makrosu” dersi ücretsiz mi?

Evet — “@Observable Makrosu” 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 SwiftUI Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. SwiftUI Academy kursu toplamda 4 dersten oluşur.

“@Observable Makrosu” dersinde ne öğreneceğim?

Görünümlerin izleyebilmesi için bir sınıfı gözlemlenebilir hâle getirin. SwiftUI 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.

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

Önceden deneyim gerekmez. CoddyKit'te SwiftUI 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 2. dersidir.

“@Observable Makrosu” 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 SwiftUI Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her SwiftUI 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. Görünüm Durumundan Model Sınıfına
  2. @Observable Makrosu
  3. Sahip Olunan Nesneler için @State
  4. Modelleri @Environment ile Paylaşma
← SwiftUI Academy Sayfasına Dön