0Pricing
Swift Academy · Pelajaran

Properti & Subscript

Gunakan properti tersimpan lazy, properti terhitung get/set, observer properti, dan subscript untuk pengindeksan khusus.

Properti & Subscript adalah pelajaran Swift 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 Swift Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Swift Academy mencakup 4 pelajaran total.

Pengantar

Pelajaran ini membahas properti lanjutan: lazy, properti terhitung dengan get/set, pengamat, serta subskrip khusus.

Properti lazy

Properti lazy dibuat hanya saat pertama kali diakses. Properti ini berguna untuk pekerjaan yang mahal.

struct DataLoader {
    lazy var data: [Int] = {
        print("Loading...")
        return [1,2,3]
    }()
}
var loader = DataLoader()
print("before access")
print(loader.data)

Get/set terhitung

Properti terhitung menggunakan blok get/set untuk menghitung atau memperbarui nilai.

struct Circle {
    var radius: Double
    var diameter: Double {
        get { return radius * 2 }
        set { radius = newValue / 2 }
    }
}
var c = Circle(radius: 5)
print(c.diameter)  // 10
c.diameter = 20
print(c.radius)    // 10

Pengamat

Gunakan willSet dan didSet untuk merespons perubahan properti.

class Account {
    var balance: Double = 0 {
        willSet { print("Will set to", newValue) }
        didSet  { print("Did set from", oldValue) }
    }
}
var a = Account()
a.balance = 50

Subskrip

Subskrip memungkinkan Anda mendefinisikan akses khusus dengan sintaksis tanda kurung siku.

struct TimesTable {
    let multiplier: Int
    subscript(i: Int) -> Int {
        return multiplier * i
    }
}
let three = TimesTable(multiplier: 3)
print(three[4])   // 12

Subskrip dengan banyak parameter

Subskrip dapat menerima beberapa parameter, misalnya matriks dengan indeks baris dan kolom.

struct Matrix {
    var grid: [[Int]]
    subscript(row: Int, col: Int) -> Int {
        return grid[row][col]
    }
}
let m = Matrix(grid:[[1,2],[3,4]])
print(m[1,0])   // 3

Pertanyaan tentang lazy

Pemeriksaan cepat: Apa yang dilakukan kata kunci lazy?

Ringkasan

Ringkasan: Gunakan lazy untuk inisialisasi tertunda, get/set untuk properti terhitung, willSet/didSet untuk pengamatan, dan subskrip untuk akses khusus.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Properti & Subscript” gratis?

Ya — teks lengkap “Properti & Subscript” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Swift Academy, upgrade ke CoddyKit PRO. Kursus Swift Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Properti & Subscript”?

Gunakan properti tersimpan lazy, properti terhitung get/set, observer properti, dan subscript untuk pengindeksan khusus. Kamu berlatih Swift 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 Swift Academy?

Tidak diperlukan pengalaman sebelumnya. Swift 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 “Properti & Subscript” 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 Swift Academy ini?

Ya. Setiap pelajaran Swift 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

  1. Properti & Subscript
  2. lazy & observer properti
  3. Properti terhitung dengan get/set
  4. Subscript untuk pengindeksan khusus
← Kembali ke Swift Academy