0Pricing
Swift Academy · Ders

@Binding: İki Yönlü Veri Akışı

@Binding ve $ önekiyle değiştirilebilir durumu görünüm hiyerarşisinde alt görünümlere aktarın.

@Binding: İki Yönlü Veri Akışı, CoddyKit'te ücretsiz bir Swift Academy dersidir. Bu, 4 dersinin 1. 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

`@Binding`, bir üst görünümün durumu ile alt görünüm arasında iki yönlü bağlantı oluşturur. Böylece alt görünüm, üst görünümün değerine sahip olmadan bu değeri okuyup yazabilir.

Binding oluşturma

```swift struct Parent: View { @State private var name = "" var body: some View { ChildView(name: $name) // $ creates Binding } } struct ChildView: View { @Binding var name: String var body: some View { TextField("Name", text: $name) } } ```

$ ön eki

Bir `@State` özelliğindeki `$name`, üst görünümün depolama alanına başvuran ve iki yönlü okuma ve yazmaya izin veren bir `Binding` döndürür.

Binding üzerinden yazma

```swift struct Toggle: View { @Binding var isOn: Bool var body: some View { Button(isOn ? "On" : "Off") { isOn.toggle() } } } ```

Önizlemeler için sabit Binding

```swift #Preview { ChildView(isOn: .constant(true)) // non-mutable binding for preview } ```

Koleksiyon öğesine Binding

```swift ForEach($items) { $item in // $items is Binding<[Item]> TextField("Name", text: $item.name) } ```

@State ve @Binding özeti

• `@State` — değerin *sahibidir*, görünümde yaşar • `@Binding` — başka bir görünümün durumuna *başvurur*, değerin sahibi değildir • `@Binding` üzerinden yapılan değişiklikler sahibine geri iletilir

Türetilmiş Binding

```swift let isLarge: Binding = $fontSize.map( get: { $0 > 18 }, set: { $0 ? 24 : 14 } ) ```

İsteğe bağlı Binding

```swift if let $item = $selectedItem { DetailView(item: $item) } ``` Swift 5.7+, `if let $binding` ile isteğe bağlı Binding kullanımını destekler.

Birden çok Binding

```swift struct Form: View { @State private var name = "" @State private var age = 0 var body: some View { FormFields(name: $name, age: $age) } } ```

Hızlı kontrol

Bir `@State` özelliğindeki `$` ön eki ne döndürür?

Özet

Önemli noktalar: • `@Binding var x: T` — okuma/yazma başvurusu oluşturur, değerin sahibi değildir • `$stateProperty`, `Binding` oluşturur • Değiştirilemeyen önizleme Binding'leri için `.constant(value)` kullanılır • Alt görünümün `@Binding` üzerinden yaptığı yazmalar, üst görünümün `@State` değerini günceller • Değiştirilebilir yineleme için `ForEach($collection) { $element in }` kullanılır Sıradaki konu: @ObservableObject.

Sıkça Sorulan Sorular

“@Binding: İki Yönlü Veri Akışı” dersi ücretsiz mi?

Evet — “@Binding: İki Yönlü Veri Akışı” 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.

“@Binding: İki Yönlü Veri Akışı” dersinde ne öğreneceğim?

@Binding ve $ önekiyle değiştirilebilir durumu görünüm hiyerarşisinde alt görünümlere aktarı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 1. dersidir.

“@Binding: İki Yönlü Veri Akışı” 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. @Binding: İki Yönlü Veri Akışı
  2. @ObservableObject ve @StateObject
  3. Paylaşılan Durum için @EnvironmentObject
  4. Tek Doğruluk Kaynağı ve Tek Yönlü Akış
← Swift Academy Sayfasına Dön