Object model PHP terus berkembang hingga menjadi salah satu yang paling lengkap di antara bahasa dynamic. Section ini menyusuri fitur-fitur mutakhirnya: typed dan readonly properties, constructor promotion, property hooks, asymmetric visibility, enumeration, attribute, hingga reflection untuk memeriksa kode saat runtime. Kita juga membahas generators dan iterators untuk pemrosesan data efisien, lalu menutup dengan rangkuman praktik terbaiknya.

# Typed Properties

Pelajari cara mendeklarasikan property bertipe agar kesalahan penugasan nilai tertangkap sejak dini.

Buka →
# Readonly Properties

Pelajari cara mengunci nilai property agar hanya diinisialisasi sekali dan object Anda tetap dapat dipercaya.

Buka →
# Readonly Classes

Pelajari cara mengunci seluruh property sebuah class sekaligus dengan readonly class agar objek benar-benar immutable.

Buka →
# Constructor Property Promotion

Pelajari cara meringkas deklarasi property dan assignment constructor menjadi satu baris dengan constructor property promotion.

Buka →
# Property Hooks

Pelajari cara menempelkan logika validasi dan komputasi langsung pada property dengan property hooks PHP 8.4.

Buka →
# Asymmetric Visibility

Pelajari cara memisahkan visibility baca dan tulis property agar nilai hanya bisa diubah dari dalam class.

Buka →
# Enums

Pelajari cara mendefinisikan kumpulan nilai tetap dengan enum agar status dan kategori tidak lagi berupa string liar.

Buka →
# Backed Enums

Pelajari cara menautkan nilai int atau string pada case enum agar data dari database dan API bisa dikonversi menjadi tipe yang aman.

Buka →
# Attributes

Pelajari cara menempelkan metadata terstruktur pada class, method, dan property dengan attribute agar kode lain bisa membacanya secara programatik.

Buka →
# Reflection

Pelajari cara memeriksa dan menjalankan struktur class, method, dan property saat runtime dengan reflection.

Buka →
# Generators

Pelajari cara membangun generator dengan yield untuk memproses data berukuran besar secara hemat memori.

Buka →
# Iterators

Pelajari cara mengimplementasikan Iterator dan IteratorAggregate agar objek buatan Anda bisa dijelajahi foreach.

Buka →
# Iterable Types

Pelajari cara memakai tipe iterable agar fungsi Anda menerima array maupun iterator secara seragam.

Buka →
# Weak References

Pelajari cara memakai WeakReference dan WeakMap agar referensi Anda tidak menghalangi garbage collector.

Buka →
# Object Model Best Practices

Pelajari cara merangkai fitur object model PHP menjadi desain class yang sehat dan mudah dirawat.

Buka →