Dari State Tampilan ke Class Model
Ekstrak data bersama ke dalam sebuah class.
Dari State Tampilan ke Class Model adalah pelajaran SwiftUI Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar SwiftUI Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus SwiftUI Academy mencakup 4 pelajaran total.
@State Mulai Tidak Memadai
Ketika layar memiliki banyak nilai @State, tampilan Anda mulai menangani data dan UI sekaligus. Campuran itu cepat menjadi rumit saat layar bertambah besar. 🤔
Isi Sebuah Model
model adalah objek biasa yang menyimpan data Anda dan aturan yang terkait dengannya, terpisah dari cara berbagai hal ditampilkan di layar.
Kelas Model Sederhana
Mulailah dengan memindahkan nilai-nilai yang terkait ke dalam satu kelas agar semuanya berada bersama di satu tempat yang rapi.
class Counter {
var count = 0
}Metode Membawa Logika
Letakkan perilaku di dekat data menggunakan metode, sehingga tampilan cukup meminta model untuk bertindak tanpa mengerjakannya sendiri.
class Counter {
var count = 0
func increment() { count += 1 }
}Mengapa Kelas, Bukan Struct
kelas adalah jenis referensi, sehingga setiap tampilan yang berbagi instans yang sama akan melihat data yang benar-benar sama, bukan salinan pribadinya sendiri.
Tampilan Tetap Ringkas
Dengan logika di dalam model, body tampilan Anda menyusut dan sebagian besar hanya berisi tata letak. Tampilan yang ringkas jauh lebih mudah dibaca dan diubah nanti.
Satu Sumber Kebenaran
Menyimpan data di dalam model memberi Anda satu sumber kebenaran, sehingga berbagai layar tidak pernah berbeda pendapat tentang nilai saat ini.
Menggunakan Kembali Model
Karena model tidak bergantung pada tampilan apa pun, Anda dapat menggunakannya kembali di beberapa layar atau bahkan dalam pengujian.
Menyimpannya di Dalam Tampilan
Sebuah tampilan dapat membuat dan menyimpan instans model sebagai properti, siap membaca nilainya dan memanggil metodenya.
struct CounterView: View {
let model = Counter()
var body: some View { Text("Count") }
}Bagian yang Hilang
Sejauh ini tampilan dapat membaca model, tetapi belum akan diperbarui ketika data berubah. Selanjutnya, kita akan memperbaikinya dengan observasi.
Pemisahan Tanggung Jawab
Pemisahan ini disebut pemisahan tanggung jawab: tampilan menampilkan, sedangkan model memutuskan. Setiap bagian memiliki satu tugas yang jelas.
Pemeriksaan Singkat
Anda telah memindahkan data ke dalam sebuah kelas. Pertanyaan singkat tentang alasannya.
Ringkasan
Anda telah mempelajari cara mengeluarkan data dan logika dari tampilan ke dalam kelas model, menjaga tampilan tetap ringkas dan memberi aplikasi Anda satu sumber kebenaran. ✨
Belajar Swift dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Dari State Tampilan ke Class Model” gratis?
Ya — teks lengkap “Dari State Tampilan ke Class Model” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus SwiftUI Academy, upgrade ke CoddyKit PRO. Kursus SwiftUI Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Dari State Tampilan ke Class Model”?
Ekstrak data bersama ke dalam sebuah class. Kamu berlatih SwiftUI Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai SwiftUI Academy?
Tidak diperlukan pengalaman sebelumnya. SwiftUI Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Dari State Tampilan ke Class Model” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran SwiftUI Academy ini?
Ya. Setiap pelajaran SwiftUI Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Dari State Tampilan ke Class Model
- Makro @Observable
- @State untuk Objek yang Dimiliki
- Berbagi Model melalui @Environment