Package
Package adalah unit organisasi dalam golang yang mengumpulkan file-file yang saling terkait. Package memungkinkan kita untuk membagi kode ke dalam bagian yang dapat digunakan kembali dan diterapkan pada proyek lain. Package juga memungkinkan kita untuk mengatur akses dari package lain ke file-file yang terkandung dalam package itu sendiri, memberikan modularitas dan organisasi pada kode proyek. Setiap file golang harus termasuk pada satu package dan hanya satu package yang dapat diterapkan pada setiap file.
Secara sederhana, package hanyalah sebuah folder tempat kita menyimpan kumpulan file golang.
Sebagai contoh, kita membuat sebuah folder bernama helper
yang didalamnya terdapat sebuah file hello.go
berisi function Hello
.
package helper
import "fmt"
func Hello() {
fmt.Println("Hello World!")
}
Sebuah package tidak boleh memiliki lebih dari satu function dengan nama yang sama. Pada contoh tersebut, function Hello
kita deklarasikan dalam sebuah file hello.go
dengan package bernama helper
. Maka, ketika kita membuat sebuah file baru yang menggunakan package helper
, kita tidak bisa mendeklarasikan ulang function bernama Hello
.
Import
Secara standar, kita hanya bisa mengakses file golang yang berada dalam satu package yang sama. Ketika kita ingin mengakses file yang berada di luar package, kita bisa menggunakan Import. Pada materi-materi sebelumnya, kita sudah sangat sering menggunakan import pada program kita, contohnya adalah package fmt
. Berikut ini adalah contoh import:
Import satu package
import "fmt"
Import lebih dari satu package
import (
"fmt"
"seri-belajar-golang/helper"
)
Saat kita meng-import package dari golang (seperti fmt
), kita hanya perlu menuliskan package-nya secara langsung. Sedangkan saat kita meng-import package milik proyek kita, maka kita perlu menuliskan folder module proyek kita (seri-belajar-golang
).
Untuk menggunakan sesuatu yang ada di dalam package yang telah diimport (misalnya struct, atau function), kita perlu menuliskan nama package-nya. Perhatikan contoh berikut:
package main
import (
"seri-belajar-golang/helper"
)
funct main() {
helper.Hello()
}
Pada contoh di atas, kita memanggil function Hello
yang ada dalam package helper
.