Pelajaran 13
Assert dan metadata (@override, @deprecated)
assert() untuk debug, @override, @deprecated.
Pahami konsepnya
assert(kondisi, pesan) memeriksa kondisi saat development — hanya aktif di mode debug (dart run dan flutter run). Di production (dart compile) otomatis dinonaktifkan.
Metadata (@annotation) memberi informasi tambahan untuk compiler dan alat: @override menandai method yang menimpa induk (compiler memeriksa benar/salahnya); @deprecated menandai API usang; @JS untuk interop JavaScript.
Coba contoh kode
class Hewan {
void suara() => print("...");
}
class Kucing extends Hewan {
@override
void suara() => print("meong");
}
void main() {
assert(1 + 1 == 2, "matematika rusak");
Kucing().suara();
}@override memaksa compiler memverifikasi bahwa suara() memang ada di Hewan. assert hanya berjalan di mode debug.
Latihan singkat
Uji: assert(1+1 == 2) — program berjalan, cetak `ok`.