Struct adalah cara Go membuat tipe data kustom yang berisi kumpulan field. Ini mirip dengan Class di bahasa OOP (Java/PHP), tapi lebih sederhana tanpa inheritance.
Methods
Kita bisa menempelkan fungsi ke Struct, yang disebut Method. Ini memungkinkan Struct memiliki perilaku (behavior).
When to use?
Gunakan Struct untuk merepresentasikan objek nyata. Contoh:
- User (Name, Email, Password)
- Product (Name, Price, SKU)
- Car (Brand, Color, Year)
MAIN.GO
package mainimport "fmt"// Definisi Struct Usertype User struct { Name string Email string Age int}// Method: Fungsi khusus milik Userfunc (u User) SayHello() { fmt.Println("Halo, nama saya", u.Name)}func main() { // Membuat object user baru user1 := User{ Name: "Raffi", Email: "raffi@mail.com", Age: 20, } fmt.Println("Data User:", user1) // Memanggil method user1.SayHello()}