Batasan on dan Urutan Mixin
Membatasi dan menumpuk mixin dengan benar
Batasan on dan Urutan Mixin adalah pelajaran Dart 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 Dart Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Dart Academy mencakup 4 pelajaran total.
Mixin dengan Persyaratan
Terkadang mixin hanya sesuai untuk class tertentu. Dart memungkinkan Anda menetapkan aturan itu dengan batasan on, sehingga penggunaan yang keliru dapat ditemukan lebih awal. 🔒
Kata Kunci on
Menambahkan on SomeType membatasi tempat mixin dapat diterapkan. Hanya class yang memperluas atau mengimplementasikan tipe tersebut yang boleh menggunakannya.
mixin Walker on Animal {
void walk() => print('Walking');
}Mengapa Mixin Perlu Dibatasi
Batasan memastikan mixin dapat memanggil anggota tipe dasar dengan aman. Tipe on tersedia di dalam method milik mixin.
mixin Walker on Animal {
void move() => breathe();
}Ditegakkan Saat Kompilasi
Cobalah mencampurkan Pejalan ke class yang bukan Animal dan Dart akan menolak kompilasinya. Batasan ini melindungi Anda sebelum program berjalan.
Memanggil super dalam Mixin
Mixin yang dibatasi dapat memanggil super pada method tipe dasar. Dengan begitu, mixin dapat membungkus atau memperluas perilaku yang diketahuinya pasti ada.
mixin Logged on Animal {
@override
void speak() { print('log'); super.speak(); }
}Urutan Itu Penting
Saat Anda mencantumkan beberapa mixin, Dart menerapkannya dari kiri ke kanan. Masing-masing ditambahkan di atas yang sebelumnya, membentuk rantai linear.
class C extends Base with A, B {}
// order: Base, then A, then BLinearisasi
Dart meratakan class dan mixinnya menjadi satu urutan teratur yang disebut linearisasi. Urutan tersebut menentukan method mana yang menang saat terjadi benturan nama.
Mixin Terakhir Menang
Jika dua mixin mendefinisikan method yang sama, mixin yang dicantumkan terakhir mendapat prioritas. Susun ulang daftar with dan versi yang menang pun berubah.
class C with A, B {}
// B's version overrides A'ssuper Menyusuri Rantai
Di dalam mixin, super menunjuk ke anggota berikutnya dalam rantai yang dilinearisasi, bukan ke class asli. Dengan cara inilah beberapa mixin dapat bekerja sama.
Menumpuk Perilaku
Dengan merangkai pemanggilan super, beberapa mixin dapat menambahkan langkahnya masing-masing di sekitar satu method. Anda membangun perilaku berlapis, seperti middleware di sekitar tindakan inti.
Urutan sebagai Alat Perancangan
Pilih urutan mixin dengan sengaja karena urutan tersebut mengendalikan override dan alur super. Perlakukan daftar with sebagai urutan yang bermakna, bukan susunan acak.
Pemeriksaan Singkat
Dua mixin mendefinisikan method yang sama. Mixin mana yang dijalankan?
Ringkasan
Anda membatasi mixin dengan on, mempelajari bahwa urutannya dari kiri ke kanan, serta melihat bagaimana linearisasi dan super menentukan method yang menang. 🎯
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Batasan on dan Urutan Mixin” gratis?
Ya — teks lengkap “Batasan on dan Urutan Mixin” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Dart Academy, upgrade ke CoddyKit PRO. Kursus Dart Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Batasan on dan Urutan Mixin”?
Membatasi dan menumpuk mixin dengan benar Kamu berlatih Dart 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 Dart Academy?
Tidak diperlukan pengalaman sebelumnya. Dart 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 “Batasan on dan Urutan Mixin” 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 Dart Academy ini?
Ya. Setiap pelajaran Dart 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
- extends dan Penggantian Metode
- Memanggil super dan Rangkaian Konstruktor
- Mixin dengan Kata Kunci with
- Batasan on dan Urutan Mixin