Hallo apa kabar teman semuanya, semoga teman semua sehat dan sukes selalu, selamat datang kembali bersama Teman Ngoding, kali ini kita akan melanjutkan pembahasan tutorial golang yaitu mengenal variabe golang. Dimohon ke pada teman semua agar semua tutorial yang teman ngoding berikan untuk langsung di praktekan. Setelah semua siap, mari kita bahas tutorialnya.
A. Variabel
Variabel merupakan sautu wadah untuk menyimpan sebuah nilai. Wadah tersebut daapt berubah-ubah atau dapat di ganti.
Golang memiliki dua jenis penulisan, yaotu di tuliskan tipe datanya atau tidak di tuliskan. Kedua cara tersbut dapat di guanakn atau valid untuk tujuan yang sama. Bedanya hanya pada tulisannya saja. Cara penulisan variabel di golang cenderung menggunakan metode camelCase.
Golang akan merekomendasikan menggunakan penulisan camelCase apabalia anda menulis variabel tidak sesuai dengan aturannya.
Contohnya
fisrt_name
Golang akan merekomendasikan
firstName
B. Variabel Beserta Tipe Data
Golang memiliki aturan yang cukup ketat ketika penulisan variabel tidak sesuai dengan aturan golang. Ketika deklarasi, tipe data yang digunakan harus dituliskan juga. Istilahnya adalah minifest typing.
Berikut ini contoh pembuatan variabel yang tipe datanya harus ditulis. Kita sekarang akan mendeklarasikan variabel ke dalam sebuah program. Pastikan semua projek baru untuk tidak lupa inisialisasi projek menggunakan commen go mod init.
package main
import "fmt"
func main() {
var firstName string = "Teman"
var lastName string
lastName = "Ngoding"
fmt.Printf("Halo %s %s!\n", firstName, lastName)
}
Penjelasan:
keyword var yang kita telah tuliskan di atas untuk deklarasi variabel, contohnya bisa kita liat firstName dan lastName. Pada nilai variabel firstName diisi langsung ketika deklarasi, berbeda dengan lastName yang nilainya diisi setelah baris kode deklarasi. Semua penulisan tersebut di perbolehkan di golang. Untuk keyword %s berperan untuk memastikan pada kata ke 2 dan ke 3 merupakan string. tidak masalah ketika teman semua tidak menyertakan %s, namun ini sebagai penekanan saja pada suatu variabel.
Skema penggunakaan keyword var:
var <nama-variabel><tipe-data>
var <nama-variabel><tipe-data> = <nilai>
- Fungsi fmt.Printf()
Fungsi ini digunakan untuk menamilkan output dalam bentuk tertentu. Perhatiakan bagian “halo %s %s!\n”, karakter %s digantikan dnegan string. Perhatikan kode di bawah ini:
fmt.Printf("halo john wick!\n")
fmt.Printf("halo %s %s!\n", firstName, lastName)
fmt.Println("halo", firstName, lastName + "!")
Tanda plus (+
) jika ditempatkan di antara string, fungsinya adalah untuk penggabungan string atau string concatenation.
Fungsi fmt.Printf()
tidak menghasilkan baris baru di akhir text, oleh karena itu digunakanlah literal newline yaitu \n
, untuk memunculkan baris baru di akhir. Hal ini sangat berbeda jika dibandingkan dengan fungsi fmt.Println()
yang secara otomatis menghasilkan new line (baris baru) di akhir.
Testing:
Jalankan dengan commend:
go run main.go

B. Deklarasi variabel tanpa tipe data
Selain manifest typing, Golang juga mengadopsi metode type inference, yaitu metode deklarasi variabel yang tipe datanya ditentukan oleh tipe data nilainya, cara kontradiktif jika dibandingkan dengan cara pertama.
Dengan menggunakan metode jenis ini, keyword var dan tipe data tidak perlu ditulis lagi.
Contoh :
Silahkan rubah file yang teman buat tadi, dengan merubah variabel yang di tuliskan tadi.
var firstName string = "Teman"
var lastName := "Ngoding"
Penjelasan:
Pada variabel lastName dideklarasikan dengan menggunakan metode type inference.
Pada tipe ini, tipe data tidak dituliskan pada saat deklarasi. Selain itu, pada penggunaan metode ini, operand = harus diganti dengan := dan keyword var dihilangkan.
Tipe data namaBelakang secara otomatis akan ditentukan menyesuaikan value atau nilainya.
Jika nilainya adalah berupa string maka tipe data variabel adalah string. Begitu seterusnya.
Pada contoh program di atas, nilai dari variabel lastName adalah “Ngoding”.Dapat dipastikan tipe datanya string, sebab diapit dengan petik dua.
Namun, Anda tetap diperbolehkan menggunakan keyword var pada saat deklarasi meskipun tanpa menuliskan tipe data, dengan ketentuan tidak menggunakan tanda := , cukup menggunakan = saja.
C. Deklarasi Multi Variabel
Mungkin teman semua pernah menemukan persamaan deklarasi tipe data pada variabel. Di Golang mendukung metoda deklarasi banyak variabel secara bersamaan, caranya dengan menuliskan variabel-variabelnya dengan pembatas tanda koma ( , ).
Contoh:
var first, second, third string
first, second, third = "satu", "dua", "tiga"
Pengisian nilai juga bisa dilakukan bersamaan pada saat deklarasi. Caranya dengan menuliskan nilai masing-masing variabel berurutan sesuai variabelnya dengan pembatas koma (,
).
var fourth, fifth, sixth string = "empat", "lima", "enam"
Kalau ingin lebih ringkas
seventh, eight, ninth := "tujuh", "delapan", "sembilan"
Silahkan teman teman buat contohnya seperti di bawah ini:
package main
import "fmt"
func main() {
var firstName, lastName string = "Teman", "Ngoding"
fmt.Printf("Halo %s %s \n", firstName, lastName)
}
Silahkan jalankan, maka akan mendapatkan hasil yang sama. karena kita hanya merubah deklarasi variabel dari yang sebelumnya.
D. Variabel Underscore _
Golang memiliki aturan unik yang jarang dimiliki oleh basa pemrograman yang lain. yaitu tidak boleh ada satupun variabel yang tidak digunakan, semua variabel yang dideklarasikan harus digunakan. Jika ada variabel yang tidak digunakan, maka program akan menampilkan pesan error. atau tidak bisa di compile.
Underscore (_
) adalah reserved variable yang bisa dimanfaatkan untuk menampung nilai yang tidak dipakai. Bisa dibilang variabel ini merupakan keranjang sampah.
Bisa dibilang variabel ini merupakan keranjang sampah.
Contoh:
_ = "belajar Golang"
_ = "Golang itu mudah"
name, _ := "Teman", "Ngoding"
Pada contoh di atas, variabel name
akan berisikan text Teman, sedang nilai Ngoding ditampung oleh variabel underscore, menandakan bahwa nilai tersebut tidak akan digunakan.
Variabel underscore adalah predefined, jadi tidak perlu menggunakan :=
untuk pengisian nilai, cukup dengan =
saja. Namun khusus untuk pengisian nilai multi variabel yang dilakukan dengan metode type inference, boleh di dalamnya terdapat variabel underscore.
Catatan Penting:
Isi variabel underscore tidak dapat ditampilkan.
Data yang sudah masuk variabel tersebut akan hilang.
Ibaratkan variabel underscore seperti blackhole, objek apapun yang masuk kedalamnya, akan terjebak selamanya didalam singularity dan tidak akan bisa keluar.
E. Deklarasi Variabel Menggunakan Keyword new
Keyword new digunakan untuk membuat variabel pointer dengan tipe data tertentu. Nilai data default-nya akan menyesuaikan tipe datanya.
name := new(string)
fmt.Println(name) // 0x20818a220
fmt.Println(*name) // ""
Variabel name
menampung data bertipe pointer string. Jika ditampilkan yang muncul bukanlah nilainya melainkan alamat memori nilai tersebut (dalam bentuk notasi heksadesimal). Untuk menampilkan nilai aslinya, variabel tersebut perlu di-dereference terlebih dahulu, menggunakan tanda asterisk ( * ).
Untuk dasar variabel yang kita bahas kali ini, saya kira cukup untuk teman teman peraktikan.
Untuk pembahasan kali ini kita cukupka, semoga bermanfaat untuk teman teman semua.
Terimakasih.
Jangan lupa baca juga tutorial sebemunya.
Tutorial Golang Part #4 ~ Program Pertama : Hallo Word
Tutorial Golang #3 : Lingkungan Kerja dan Istilah-istilah di Golang
Tutorial Golang #2 : Instalasi Golang di Linux, Windows dan Mac OS