Apa Itu Generic Function? Arti, Cara Kerja, dan Contoh
Farijihan Putri
•
17 October 2024
•
107
Generic function itu ibarat senjata rahasia buat Warga Bimbingan yang suka nulis kode tapi nggak mau ribet nulis ulang hal yang sama berulang-ulang.
Masalah yang sering muncul saat ngoding adalah kode yang terkesan repetitif karena harus menyesuaikan tipe data berbeda, padahal logikanya sama.
Nah, ini bisa bikin kode kamu panjang, nggak efisien, dan rentan bug. Agak sebel kan kalau harus copy paste kode terus? Solusinya, kamu bisa pakai generic function!
Fungsi ini membuatmu bisa menulis satu set logika yang bisa dipakai untuk berbagai tipe data tanpa harus bikin kode baru setiap kali. Yuk, bahas lebih lanjut supaya kamu bisa bikin kode yang lebih singkat dan efisien!
Apa Itu Generic Function?
Generic function itu ibarat temen yang fleksibel, bisa diandalkan buat berbagai situasi tanpa harus berubah-ubah.
Di dunia pemrograman, generic function memungkinkan kamu menulis satu fungsi yang bisa digunakan untuk berbagai tipe data. Daripada bikin fungsi yang sama berulang-ulang untuk tipe data berbeda.
Misal, satu untuk int, satu untuk float, dan satu lagi untuk string. Dengan generic function, kamu cuma perlu satu fungsi untuk semuanya. Serba bisa, kan?
Kuncinya ada di type parameter. Dengan generic function, kamu gak perlu tahu tipe data yang akan dipakai di awal. Fungsi ini secara otomatis akan menyesuaikan dengan tipe data yang diberikan saat dipanggil.
Ibaratnya kayak buka kunci pintu otomatis yang bisa membaca siapa pun yang masuk, tanpa harus pakai kunci yang beda-beda. Simpel, fleksibel, dan pastinya bikin kode kamu jauh lebih efisien!
Mengapa Generic Function Penting?
Sumber: Freepik
Warga Bimbingan mungkin bertanya, "Kenapa sih kita butuh generic function? Emang sepenting itu?"
Nah, jawabannya simpel: generic function bukan cuma bikin hidupmu sebagai developer lebih mudah, tapi juga bikin kode lebih rapi, efisien, dan gampang kamu maintain.
Bayangin aja kalau kamu harus nulis kode yang sama untuk tiap tipe data, capek kan? Yuk, bahas tiga alasan kenapa generic function penting buat kamu!
1. Hemat Waktu dan Usaha
Daripada nulis ulang fungsi yang sama untuk tipe data berbeda, dengan generic function kamu cukup tulis sekali dan selesai. Hemat tenaga, bikin ngoding jadi lebih cepat dan fokus ke hal penting lainnya!
2. Lebih Sedikit Bug
Dengan kode yang reusable dan konsisten, kamu mengurangi risiko typo atau error yang muncul gara-gara copy-paste kode yang nggak pas. Hasilnya? Kode lebih stabil dan minim bug yang bikin kepala pening!
3. Maintain Mudah
Ketika kamu mau update atau ubah logika di fungsi tersebut, kamu cukup ubah satu tempat aja. Warga Bimbingan nggak perlu nih bongkar semua fungsi untuk tiap tipe data.
Praktis banget, kan? Generik itu bukan cuma fleksibel, tapi juga bikin maintain kode jauh lebih mudah!
Cara Kerja Generic Function
Sumber: Freepik
Generic function bekerja seperti "serba bisa"-nya dunia pemrograman. Bayangin kamu punya satu kotak alat yang bisa berubah bentuk sesuai kebutuhan. Nah, begitu juga cara kerja generic function.
Alih-alih bikin banyak fungsi untuk tipe data yang berbeda, kamu cukup buat satu fungsi yang fleksibel. Lalu tinggal kasih tahu tipe data apa yang akan diproses saat menjalankan fungsi tersebut.
Ketika kamu menulis generic function, kamu nggak perlu tentukan dulu tipe datanya di awal. Nanti, saat fungsi dipanggil, tipe data akan otomatis disesuaikan.
Misalnya, kamu punya fungsi penjumlahan generik. Kamu bisa pakai untuk int hari ini dan mungkin buat float besok, tanpa harus bikin ulang fungsinya. Sederhana, tapi powerful, bikin kode kamu fleksibel dan lebih rapi.
Baca Juga: 10 Jenis Bahasa Pemrograman Paling Populer 2024, Yuk Simak!
Contoh Implementasi Generic Function
Sekarang, biar makin kebayang gimana generic function bekerja, MinDi mau nunjukin contoh implementasinya.
Misalnya, Warga Bimbingan punya fungsi sederhana untuk membandingkan dua nilai. Biasanya, kamu mungkin bikin terpisah untuk tipe int dan float.
Tapi dengan generic function, kamu cukup bikin satu fungsi yang bisa dipakai buat semua tipe data.
Begini contohnya kalau di bahasa seperti Go:
Warga Bimbingan lihat, kan? Fungsi Compare di atas pakai [T any] yang artinya, "T" bisa jadi tipe data apa saja.
Mau int, float, atau tipe data lain, fungsi ini tetap bisa dipakai tanpa perlu bikin fungsi baru.
Makanya nih, daripada bikin fungsi CompareInt dan CompareFloat terpisah, dengan satu generic function kamu udah beres semuanya. Lebih ringkas, lebih fleksibel, dan tentu saja lebih hemat waktu.
Perbedaan Generic Function dengan Function Overloading
Generic function dan function overloading terlihat mirip ya, Warga Bimbingan? Nah, ini karena keduanya memungkinkan kamu menangani berbagai tipe data, tapi cara kerjanya berbeda.
Generic function menggunakan satu fungsi yang bisa fleksibel menerima berbagai tipe data dengan bantuan type parameter.
Kamu hanya perlu menulis satu fungsi dan membiarkan parameter tipe data diatur secara otomatis saat fungsi dipanggil.
Nah, ini bikin kode lebih efisien dan menghindari duplikasi, terutama kalau kamu bekerja dengan banyak tipe data berbeda.
Sementara itu, function overloading adalah teknik di mana kamu membuat beberapa versi fungsi yang sama, tapi dengan parameter yang berbeda.
Kalau kamu butuh fungsi Add untuk tipe int dan float, kamu harus bikin dua fungsi yang namanya sama, tapi dengan parameter yang berbeda.
Meskipun function overloading bisa membantu menyesuaikan tipe data, kamu tetap harus menulis beberapa versi dari fungsi yang sama, yang bisa bikin kode menjadi lebih panjang dan susah maintain.
Generic function lebih unggul dalam hal efisiensi karena cukup satu fungsi untuk menangani semuanya.
Baca Juga: Fungsi Substring SQL dan Fungsi Manipulasi String Lainnya
Mau Pakai Generic Function untuk Menulis Kode?
Setelah memahami betapa praktis dan efisiennya generic function dalam menulis kode, kamu pasti makin semangat untuk menguasainya, kan?
Warga Bimbingan ingin benar-benar mendalami penggunaan generic function dan menjadi developer Golang handal? Yuk ikutan Bootcamp Golang Back-End Development dibimbing.id!
Di program bootcamp ini, kamu akan belajar langsung dari mentor berpengalaman dengan silabus terlengkap dan punya kesempatan praktek nyata untuk portfolio.
Bonusnya? Kamu bisa mengulang kelas secara gratis dan 90% alumni berhasil dapat kerja. Belum lagi, ada 700+ hiring partner yang siap menyalurkan kamu ke dunia kerja!
Kamu punya pertanyaan seperti, "Gimana cara mulai belajar Golang?" atau "Apa aja yang dibahas di bootcamp?", konsultasi gratis di sini. Dibimbing.id siap #BimbingSampeJadi developer backend yang profesional!
Referensi
Tags