0Pricing
Swift Academy · Pelajaran

Parameter in-out & dasar penanganan galat (throws)

Ubah argumen dengan parameter in-out dan tangani kegagalan yang dapat dipulihkan menggunakan throws, try, dan do/catch.

Parameter in-out & dasar penanganan galat (throws) adalah pelajaran Swift Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 3. 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 3 pelajaran total.

Pengantar

Pelajaran ini membahas parameter masuk-keluar (mengubah variabel milik pemanggil) dan penanganan kesalahan dasar dengan pelemparan, percobaan, serta blok tangkap.

Dasar-Dasar Parameter Masuk-Keluar

Parameter masuk-keluar memungkinkan fungsi mengubah variabel milik pemanggil. Panggil dengan &name.

func increment(_ value: inout Int) {
    value += 1   // mutate caller's variable
}
var count = 0
increment(&count)
print("count =", count)  // 1

Kapan Menggunakannya

Gunakan parameter masuk-keluar seperlunya:

  • Cocok untuk perubahan sederhana, misalnya penghitung.
  • Untuk kejelasan dan kemudahan pengujian, sebaiknya kembalikan nilai baru.

Pelemparan + Blok Tangkap

Tandai fungsi yang dapat gagal sebagai fungsi yang melemparkan kesalahan. Gunakan blok penanganan untuk menangani kesalahan.

enum FileError: Error { case notFound, unreadable }

func readFile(named: String) throws -> String {
    if named.isEmpty { throw FileError.notFound }
    return "contents of \\(named)"
}

// Calling a throwing function
do {
    let text = try readFile(named: "notes.txt")
    print(text)
} catch {
    print("Failed:", error)
}

Percobaan Opsional vs Percobaan Paksa

Percobaan opsional mengubah kesalahan menjadi nil (opsional). Percobaan paksa akan menyebabkan aplikasi berhenti saat terjadi kesalahan—hindari kecuali Anda benar-benar yakin.

// try? converts errors to nil (optional)
let maybeText = try? readFile(named: "")
print(maybeText as Any)  // nil

// try! crashes on error—only use when you are sure
// let forcedText = try! readFile(named: "")  // avoid in production

Pembantu yang Melemparkan Kesalahan

Anda dapat melemparkan kesalahan dari fungsi pembantu. Sebaiknya gunakan enumerasi kecil untuk kesalahan khusus; hindari NSError mentah kecuali diperlukan.

func parseInt(_ s: String) throws -> Int {
    if let n = Int(s) { return n }
    else { throw NSError(domain: "Parse", code: 1) }
}

do {
    let n = try parseInt("10")
    print("n =", n)
} catch {
    print("parse error")
}

Pertanyaan tentang Parameter Masuk-Keluar

Pemeriksaan singkat: Apa arti parameter inout bagi sebuah parameter?

Ringkasan

Ringkasan: Gunakan parameter masuk-keluar untuk perubahan langsung, tetapi seperlunya. Tangani kegagalan dengan pelemparan, percobaan, dan blok tangkap; pilih percobaan opsional untuk hasil opsional dan hindari percobaan paksa dalam produksi.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Parameter in-out & dasar penanganan galat (throws)” gratis?

Ya — teks lengkap “Parameter in-out & dasar penanganan galat (throws)” 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 3 pelajaran total.

Apa yang akan aku pelajari di “Parameter in-out & dasar penanganan galat (throws)”?

Ubah argumen dengan parameter in-out dan tangani kegagalan yang dapat dipulihkan menggunakan throws, try, dan do/catch. 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 3 dari 3.

Berapa lama pelajaran “Parameter in-out & dasar penanganan galat (throws)” 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. Mendefinisikan fungsi, parameter, label, default/variadik
  2. Nilai balik & beberapa nilai balik melalui tuple
  3. Parameter in-out & dasar penanganan galat (throws)
← Kembali ke Swift Academy