Memahami Function Sebagai Value di Golang

Table of Contents
Memahami Function Sebagai Value di Golang

Dalam bahasa pemerograman golang, sebuah function dapat kita simpan sebagai variable dan menggunakannya sebagai referensi. Manfaat dari fitur ini adalah pastinya kode kita terhindar dari duplikasi di karenakan dengan menyimpan fungsi sebagai variable, maka kita bisa menggunakannya di berbagai bagian code tanpa harus mengulang deklarasi fungsi yang sama. 

Tanpa berlama lama, langsung saja kita lihat contoh implementasi kode nya seperti apa dan penjelasannya. 

Contoh Kode

package main

import "fmt"

func main(){
	
	getLenguange := getLenguangeProgramming
	
	fmt.Println(getLenguange("Golang"))

	totalSum := sum
	fmt.Println(totalSum(1, 2, 3, 4, 5))
}


func getLenguangeProgramming(name string) string {
	return "Programming lenguange, " + name
}

func sum(numbers ...int) int {
	totalSum := 0
	for _, number := range numbers {
		totalSum += number
	}
	return totalSum
}

Penjelasan Kode : 

1.  Menyimpan Fungsi getLenguangeProgramming ke Dalam Variable

Bisa kita lihat pada fungsi main, terdapat variable getLenguange yang menyimpan referensi pada fungsi getLenguangeProgramming. Terlihat pada pemanggilan fungsi tidak menggunakan tanda kurung () pada akhir nama fungsi. di karenakan kalau kita menambahkan tanda kurung, maka fungsi tersebut akan di panggil langsung dan meminta nilai pada parameter name, sedangkan tujuan nya adalah hanya untuk menyimpan referensinya. 

getLenguange := getLenguangeProgramming

Anda dapat langsung memanggil variable getLenguange seperti pemanggilan fungsi biasanya yang menggunakan tanda kurung di karenakan variable getLenguange sudah mereferensi ke fungsi getLenguangeProgramming()

2. Memanggil Variable getLenguange Layaknya Sebuah Fungsi

Seperti yang kami katakan pada akhir point 1, ketika anda memanggil variable getLenguange, maka di harapkan untuk memberikan nilai ke dalam parameter layaknya fungsi getLenguangeProgramming(). Ini di karenakan variable getLenguange sudah melakukan referensi ke fungsi getLenguangeProgramming(). jadi ketika anda memanggil getLenguange("Golang"), maka akan menghasilkan output seperti di bawah ini : 

Programming lenguange, Golang

3. Menggunakan Fungsi sum dengan Variable

Fungsi kedua, sum, memanfaatkan parameter variable dengan notasi ... yang dapat memungkinkan kita mengirimkan nilai integer tanpa batas. Di dalam fungsi sum terdapat kode untuk mengembalikan nilai akhir dari hasil penjumlahan variable argument. 

totalSum := sum
fmt.Println(totalSum(1, 2, 3, 4, 5))

Dengan memanggil totalSum(1, 2, 3, 4, 5) maka output yang akan muncul di layar ketika program di jalankan adalah 15. 

Kesimpulan

Menyimpan fungsi sebagai nilai di dalam sebuah variable adalah salah satu fitur yang sangat bermanfaat di bahasa pemerograman golang yang dapat membuat kita mengembangkan program yang lebih modular. Kita dapat menyimpan referensi fungsi, dan menggunakannya di bagian lain dari kode. Semoga anda bisa paham yaa apa yang kami jelaskan pada module ini, Terus belajar dan melatih tingkat skill koding anda. Terima kasih

Selanjutnya anda bisa lanjut ke Module :

Mengenal Function Sebagai Parameter di Golang

Posting Komentar