Study
Go

Struct di Go

Penjelasan

Go tidak punya class/OOP tradisional seperti PHP/Java — sebagai gantinya, Go punya struct untuk mengelompokkan beberapa field jadi satu unit data, mirip struct di C. Struct di Go jadi fondasi utama untuk merepresentasikan entitas, nantinya dilengkapi dengan method lewat receiver (dibahas di materi berikutnya).

Contoh Konsep

package main

import "fmt"

type Buku struct {
	Judul string
	Tahun int
}

func main() {
	bukuku := Buku{Judul: "Laravel Dasar", Tahun: 2026}

	fmt.Println(bukuku.Judul, bukuku.Tahun)
	// Output: Laravel Dasar 2026

	bukuku.Tahun = 2027 // field bisa diubah lewat dot notation
}

Praktikum

Buat struct Siswa dengan field Nama (string) dan Umur (int). Buat satu variabel struct Siswa di main(), isi nama dan umurnya, lalu tampilkan keduanya dengan fmt.Println.

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Field struct yang diawali HURUF BESAR (mis. Nama) bisa diakses dari package lain (exported/public), sedangkan yang diawali huruf kecil (mis. nama) hanya bisa diakses dari dalam package yang sama (unexported/private) — Go tidak punya keyword public/private terpisah, cukup dari kapitalisasi nama.