Belajar Golang dari Nol: Panduan Lengkap Bahasa Pemrograman Go untuk Pemula

| | | Golang - Go Language
Belajar Golang dari Nol: Panduan Lengkap Bahasa Pemrograman Go untuk Pemula

Kalau kalian ngintip-ngintip lowongan backend developer belakangan ini, pasti sering lihat satu syarat yang makin sering muncul: Golang. Bahasa besutan Google ini memang lagi naik daun, dipakai buat layanan backend, API, sampai tools yang butuh performa tinggi.

Tapi buat pemula, Golang sering keliatan menyeramkan. Saya juga gitu dulu. 😅 Pas pertama lihat kodenya yang ribet kayak func main(), saya sempat mikir “ini bahasa kok formal banget sih?” Padahal setelah dipelajari, Golang justru salah satu bahasa yang paling ramah pemula: sintaksnya bersih, dokumentasinya rapi, dan nggak banyak istilah aneh.

Panduan ini buat kalian yang mau belajar Golang dari nol, tanpa asumsi apa pun, kecuali bisa nyalain komputer. 😀

Apa Itu Golang?

Golang (sering ditulis Go) bahasa pemrograman buatan Google yang rilis pertama kali tahun 2009. Tujuan pembuatannya sederhana: bahasa yang cepat, sederhana, dan cocok buat sistem besar. Go dibuat oleh Rob Pike dan Ken Thompson, dua tokoh yang juga menciptakan UNIX dan bahasa C, jadi nggak heran DNA-nya terasa “kuat”.

Kenapa orang-orang pakai Go?

  • Performa tinggi. Hasil compile-nya jadi satu file executable yang langsung jalan, tanpa interpreter.
  • Sintaks sederhana. Jumlah keyword-nya sedikit, nggak ada class inheritance yang ribet (pakai struct dan interface).
  • Cocok buat backend dan microservices. Banyak perusahaan (Gojek, Tokopedia, dan lainnya) pakai Go buat layanan API mereka.
  • Concurrency bawaan. Dengan fitur goroutine, bikin program yang jalan paralel jadi gampang.

Intinya: kalau kalian mau belajar bahasa yang masih dicari industri dan kurva belajarnya nggak sebesar itu, Go pilihan yang bagus.

Cara Install Golang

Sebelum ngoding, install dulu Go di komputer kalian. Prosesnya simpel:

  1. Download installer dari go.dev/dl.
  2. Jalankan installer, ikuti wizard. Pastikan centang opsi buat nambahin Go ke PATH (biasanya udah default).
  3. Selesai. Verifikasi dengan buka Command Prompt, ketik:
go version

Kalau muncul go version go1.x.x windows/amd64, berarti instalasi berhasil. 🎉

Langkah detailnya (termasuk cara set GOPATH kalau ada masalah) udah saya tulis lengkap di cara install Golang terbaru di Windows.

Struktur Program Go Pertamamu

Buat folder baru, misalnya belajar-go, lalu buat file bernama main.go. Tulis kode ini:

package main

import "fmt"

func main() {
    fmt.Println("Halo, dunia!")
}

Jalankan dengan:

go run main.go

Output:

Halo, dunia!

Mari bedah baris per baris:

  • package main menandakan ini program yang bisa dijalankan langsung, bukan library.
  • import "fmt" ngambil package fmt (format) yang nyediain fungsi cetak.
  • func main() fungsi utama, titik masuk program. Kode di dalam kurung kurawal ini yang dieksekusi.
  • fmt.Println(...) mencetak teks diikuti baris baru.

Ingat pola ini: package, import, func main. Semua program Go yang bisa dijalankan selalu punya bentuk dasar kayak gini.

Variabel dan Tipe Data

Di Go, deklarasi variabel bisa dua cara:

// Cara 1: dengan tipe data eksplisit
var nama string = "Budi"

// Cara 2: biar Go yang nebak (type inference)
umur := 20

Aturan penting: pakai := pas deklarasi pertama (di dalam fungsi), lalu pakai = buat ngubah nilainya setelahnya.

Tipe data dasar yang paling sering dipakai:

TipeContohKeterangan
string"Halo"Teks
int20Bilangan bulat
float643.14Bilangan desimal
booltrueBenar/salah

Contoh pemakaian:

package main

import "fmt"

func main() {
    var nama string = "Budi"
    umur := 20
    tinggi := 170.5
    menikah := false

    fmt.Println("Nama:", nama)
    fmt.Println("Umur:", umur)
    fmt.Println("Tinggi:", tinggi)
    fmt.Println("Menikah:", menikah)
}

Percabangan If dan Switch

Logika if di Go mirip bahasa lain, tapi ada keunikannya: kondisinya nggak perlu tanda kurung, dan bisa deklarasi variabel langsung di dalam kondisi.

umur := 17

if umur >= 17 {
    fmt.Println("Boleh punya SIM")
} else {
    fmt.Println("Belum boleh")
}

Buat banyak kondisi, Go punya switch yang lebih rapi:

nilai := 85

switch {
case nilai >= 90:
    fmt.Println("A")
case nilai >= 80:
    fmt.Println("B")
default:
    fmt.Println("C")
}

Contoh switch dengan nilai langsung bisa dilihat di tutorial switch case Golang.

Perulangan For

Di Go cuma ada satu kata kunci perulangan: for. Nggak ada while atau do-while, semuanya pakai for.

// Perulangan dengan counter
for i := 1; i <= 5; i++ {
    fmt.Println(i)
}

// Perulangan kayak while
n := 0
for n < 5 {
    n++
    fmt.Println(n)
}

// Perulangan tak terbatas (berhenti pakai break)
for {
    fmt.Println("jalan terus...")
    break
}

Fungsi di Golang

Fungsi di Go dideklarasikan dengan kata kunci func. Keunikannya: tipe data ditulis setelah nama parameter, dan bisa ngembaliin lebih dari satu nilai sekaligus.

package main

import "fmt"

// Fungsi dengan satu return
func kali(a int, b int) int {
    return a * b
}

// Fungsi dengan dua return
func bagiDanSisa(a int, b int) (int, int) {
    return a / b, a % b
}

func main() {
    fmt.Println(kali(6, 7))

    hasil, sisa := bagiDanSisa(17, 5)
    fmt.Println("Hasil:", hasil, "Sisa:", sisa)
}

Output:

42
3 2

Fungsi dengan banyak return ini salah satu hal yang bikin Go unik, dan sering bikin programmer dari bahasa lain suka.

Proyek Kecil: Program Hitung BMI

Sekarang kalian udah punya modal (variabel, if, perulangan, fungsi), saatnya bikin proyek kecil supaya ilmunya nempel. Kita bikin program penghitung BMI:

package main

import "fmt"

func hitungBMI(berat float64, tinggi float64) float64 {
    return berat / (tinggi * tinggi)
}

func main() {
    var berat, tinggi float64

    fmt.Print("Berat badan (kg): ")
    fmt.Scan(&berat)
    fmt.Print("Tinggi badan (m): ")
    fmt.Scan(&tinggi)

    bmi := hitungBMI(berat, tinggi)
    fmt.Printf("BMI kamu: %.2f\n", bmi)

    switch {
    case bmi < 18.5:
        fmt.Println("Kategori: Kurus")
    case bmi < 25:
        fmt.Println("Kategori: Normal")
    default:
        fmt.Println("Kategori: Gemuk")
    }
}

Jalankan, coba isi berat dan tinggi kalian. Program ini nggabungin hampir semua yang barusan dipelajari: variabel, input, fungsi, dan switch.

Langkah Selanjutnya

Belajar Golang nggak berhenti di sini. Berikut materi lanjutan yang bisa dipelajari di blog ini:

Semua artikel ini gratis, dan saya tulis dengan gaya yang sama: pelan, contoh langsung, tanpa basa-basi.

Frequently Asked Questions

Apakah Golang sulit untuk pemula?

Nggak. Golang justru dirancang biar sederhana: jumlah keyword sedikit, nggak ada fitur rumit kayak inheritance, dan dokumentasi resminya rapi. Pemula yang udah paham logika dasar (variabel, if, loop) biasanya cepet beradaptasi.

Golang dipakai untuk apa saja?

Paling banyak buat backend service, REST API, microservices, dan tools command-line. Banyak perusahaan besar Indonesia (Gojek, Tokopedia, Bukalapak) pakai Go di bagian backend karena performa dan kemudahan deployment-nya.

Apakah harus belajar C dulu sebelum Golang?

Nggak wajib. Meskipun Go terinspirasi dari C, sintaksnya lebih sederhana dan nggak ada manajemen pointer yang rumit. Bisa langsung belajar Go dari nol tanpa bahasa lain.

Golang vs Python, mana yang lebih mudah?

Buat pemula murni, Python sedikit lebih mudah karena sintaksnya sangat dekat sama bahasa manusia. Tapi Go nawarin keunggulan: hasil compile jadi satu file executable dan performa jauh lebih cepat. Kalau target kalian backend, dua-duanya valid.

Berapa lama belajar Golang dari nol?

Buat nguasai dasar (sintaks, fungsi, struct, error handling) sekitar 1 sampai 2 bulan belajar konsisten. Buat bisa bikin REST API sederhana, tambah 1 sampai 2 bulan lagi. Intinya konsisten, jangan nyerah di minggu pertama. 😀

Kesimpulan

Golang itu bahasa yang sederhana tapi kuat, dan justru karena sederhananya dia cocok buat pemula yang mau belajar bahasa modern yang dipakai industri. Kalian udah belajar: install, struktur program, variabel, percabangan, perulangan, fungsi, dan bikin proyek kecil.

Langkah selanjutnya: praktikkan. Ubah-ubah angka di program BMI tadi, tambah fitur, atau coba bikin program lain dari nol. Semakin sering nulis kode Go, semakin cepet jago. Kalau ada error atau bingung, tinggalin komentar di bawah ya, nanti saya bantu. 😀

Selamat belajar Golang!

Sigit Nurhanafi avatar
Full-stack developer & technical writer. Berpengalaman di PHP, Laravel, NodeJS, MySQL, dan Python. Aktif menulis tutorial pemrograman dan maintaining open-source projects di PemburuKode sejak 2021.