Pengenalan Mutation
Ubah data tanpa merusak kode lain.
Pengenalan Mutation adalah pelajaran Mojo Academy gratis di CoddyKit. Ini adalah pelajaran 4 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 Mojo Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Mojo Academy mencakup 4 pelajaran total.
Mengubah Data dengan Sengaja
Salinan independen memang bagus, tetapi program nyata harus mengubah data: memperbarui score atau memperbesar daftar. Mari kita melakukannya dengan aman. ✏️
Mengubah var Milik Anda
Perubahan paling sederhana adalah menetapkan ulang var yang Anda miliki. Karena itu adalah salinan Anda, perubahan tersebut hanya memengaruhi nilai Anda.
var score = 10
score = score + 5Perubahan Lokal Bebas dari Efek Samping
Mengedit var lokal tidak dapat merembes keluar. Variabel lain tetap mempertahankan nilainya, sehingga perubahan itu tidak menimbulkan efek samping yang tidak terduga.
var a = 1
var b = a
a = 100Fungsi Mendapatkan Salinan Secara Default
Berikan nilai kepada fungsi, dan fungsi itu akan mengedit salinan. Nilai asli Anda di luar fungsi tetap tidak berubah.
fn bump(n: Int) -> Int:
return n + 1Namun Terkadang Anda Menginginkan Perubahan Nyata
Bagaimana jika fungsi harus memperbarui nilai milik pemanggil secara langsung? Mojo memungkinkan Anda memilihnya dengan konvensi inout.
inout Berarti Mengubah Secara Langsung
Tandai argumen dengan inout, dan fungsi akan bekerja pada nilai aktual milik pemanggil, sehingga perubahannya benar-benar tersimpan.
fn double(inout n: Int):
n = n * 2Perubahan Harus Eksplisit, Bukan Tidak Sengaja
Perhatikan bahwa Anda harus menulis inout dengan sengaja. Mojo tidak pernah mengubah nilai pemanggil diam-diam; Anda selalu harus memilihnya secara eksplisit.
Tanda Tangan Fungsi Memberi Tahu Anda
Tanda tangan fungsi mengungkapkan maksudnya. Jika Anda melihat inout, Anda tahu bahwa nilai Anda mungkin berubah; jika tidak, harapkan salinan yang aman.
Memanggil Fungsi inout
Panggil fungsi itu dengan var Anda dan lihat nilainya diperbarui tepat di tempat penyimpanannya. Fungsi tersebut menjangkau nilai asli Anda, sesuai rancangan.
var n = 4
double(n)
print(n)Pendekatan yang Seimbang
Mojo memadukan kedua pendekatan: salinan yang aman secara default dan perubahan yang dilakukan dengan sengaja saat Anda memintanya. Anda mendapatkan keamanan sekaligus fleksibilitas.
Langkah Berikutnya
Ini baru pengenalan singkat. Nanti Anda akan mempelajari owned dan operator transfer untuk mengendalikan sepenuhnya cara data berpindah. 🚀
Pemeriksaan Singkat
Anda ingin fungsi mengubah nilai aktual milik pemanggil, bukan salinan. Apa yang Anda gunakan?
Ringkasan
Mengubah var milik Anda sendiri itu aman dan bersifat lokal. Untuk mengubah nilai milik pemanggil, pilih inout; tidak ada yang berubah secara tidak sengaja. 🎯
Belajar Mojo 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 “Pengenalan Mutation” gratis?
Ya — teks lengkap “Pengenalan Mutation” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Mojo Academy, upgrade ke CoddyKit PRO. Kursus Mojo Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Pengenalan Mutation”?
Ubah data tanpa merusak kode lain. Kamu berlatih Mojo 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 Mojo Academy?
Tidak diperlukan pengalaman sebelumnya. Mojo 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 4 dari 4.
Berapa lama pelajaran “Pengenalan Mutation” 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 Mojo Academy ini?
Ya. Setiap pelajaran Mojo 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
- Makna Semantik Nilai
- Salinan vs State Bersama
- Bawaan Aman Mojo
- Pengenalan Mutation