Generics
Bagian dari kursus Go
Kamu menulis sebuah function yang mencari angka terbesar di dalam slice of int. Lalu kamu butuh versi untuk float64, jadi function itu kamu salin dan dua kata di dalamnya kamu ganti. Lalu satu lagi untuk string. Sekarang ada tiga function yang nyaris identik, dan begitu kamu memperbaiki satu bug di salah satunya, kamu masih harus ingat pada dua sisanya.
Selama hampir sepanjang hidupnya, Go tidak punya jawaban yang rapi untuk hal ini. Pilihannya cuma dua: duplikasi function itu, atau pakai interface{} yang menerima apa saja tetapi melepas seluruh pengecekan tipe, sehingga compiler tidak lagi bisa memberi tahu kamu kalau slice yang kamu kirim isinya salah. Duplikasi atau buta, pilih salah satu. ...
Ingin belajar Go Generics di lingkungan nyata?
Klik di bawah, dapatkan mesin Linux dengan Go siap pakai, dan kerjakan Generics secara praktik dengan tutor AI yang memahami kodemu.
Mulai pelajaran iniGenericsYang akan kamu pelajari
- Type parameters with [T any]
- Constraints
- Comparable
- Tilde approximation ~int
- Generic Map and Filter
- When generics help, when they do not
Baca pelajaran ini dalam bahasamu
Semua pelajaran di kursus ini
20 pelajaran- 1Halo, Go25 mnt
- 2Variabel dan Tipe Data25 mnt
- 3Alur Kendali: if dan for30 mnt
- 4Fungsi30 mnt
- 5Slice dan Map35 mnt
- 6Struct dan Pointer35 mnt
- 7Methods dan Interfaces35 mnt
- 8Penanganan Kesalahan35 mnt
- 9Modules dan Struktur Proyek35 mnt
- 10Proyek Akhir CLI Kecil40 mnt
- 11Tur Pustaka Standar40 mnt
- 12Pengujian dan Benchmarks40 mnt
- 13Goroutine dan Channel40 mnt
- 14Pola Konkurensi45 mnt
- 15Generics35 mnt
- 16Server HTTP45 mnt
- 17Database dengan database/sql45 mnt
- 18Performa dan Pembuatan Profil40 mnt
- 19Pola Desain dalam Go40 mnt
- 20Penerapan dan Produksi45 mnt
