Sebelum Go 1.18, kode yang sama untuk banyak tipe harus diduplikasi atau menggunakan interface kosong. Generics menghapus kebutuhan tersebut dengan type parameter yang dibatasi constraint. Section ini membahas motivasi, sintaks, constraint comparable, type sets, hingga keputusan kapan generics memang solusi yang tepat.
Pahami masalah duplikasi kode yang diselesaikan generics.
Buka → # Type ParameterDeklarasikan type parameter pada fungsi dan tipe.
Buka → # Type ConstraintBatasi tipe yang sah dengan constraint berbentuk interface.
Buka → # Constraint comparableGunakan constraint comparable untuk tipe yang dapat dibandingkan.
Buka → # Type SetsPahami himpunan tipe yang didefinisikan constraint.
Buka → # Generic FunctionTulis fungsi generik yang bekerja untuk banyak tipe dengan type safety.
Buka → # Generic TypeBuat struct dan container generik sendiri.
Buka → # Limitasi Method pada Generic TypeKenali aturan method dengan type parameter sendiri beserta batasannya pada interface.
Buka → # Kapan Menggunakan GenericsPilih antara generics, interface, dan kode konkret secara sadar.
Buka →