Untuk tujuan boleh guna semula, pakej ialah permulaan yang baik untuk mengurus kod Go anda kerana kami boleh mengimport dan menggunakannya ke program kami.
Mari buat fail utama yang ringkas untuk bermula dengan
package main import "fmt" func main() { fmt.Println("hello world!") }
Ia adalah program hello world yang mudah yang mencetak rentetan hello world apabila kita menjalankan go run main.go .
Sekarang mari kita mulakan pakej dengan mencipta modul dahulu. Biasanya ia menggunakan repositori git walaupun kami tidak bercadang untuk menolaknya ke mana-mana repositori di luar sana. Dalam contoh ini saya akan menggunakan repositori Github saya sendiri dan menggunakan nama pakej mygopackageas.
git mod init github.com/didikz/mygopackage
Kemudian buat subdirektori, contohnya saya menggunakan model dan buat user.go inside of it. Struktur sepatutnya kelihatan seperti ini
Di dalam user.go saya akan membuat struct dan penerima dengan mudah yang boleh diimport kemudian dalam main.go . Saya juga menetapkan nama pakej mengikut nama direktori semasa sebagai model
package models type User struct { Id int FirstName string LastName string Address string } func (user *User) GetName() string { return user.FirstName + " " + user.LastName }
Kembali ke main.go dan sekarang kita boleh cuba mengimport pakej dan menggunakan struct yang ditentukan. Gunakan nama modul yang dimulakan sebelum ini bersama-sama dengan nama pakej.
import "github.com/didikz/mygopackage/models"
Sekarang untuk menggunakan model pengguna dari pakej kita boleh menulis seperti ini
var user models.User user.Id = 1 user.FirstName = "Didik" user.LastName = "Tri Susanto" user.Address = "Malang" // or alternatively user := models.User{Id: 1, FirstName: "Didik", LastName: "Tri Susanto", Address: "Malang"} fmt.Println(user.GetName())
Semua siap. Seterusnya, Jika kita run go run main.go maka ia harus mencetak Didik Tri Susanto
Mudah kan?
Fail main.go terakhir sekarang sepatutnya seperti ini
package main import ( "fmt" "github.com/didikz/mygopackage/models" ) func main() { user := models.User{Id: 1, FirstName: "Didik", LastName: "Tri Susanto", Address: "Malang"} fmt.Println(user.GetName()) }
Itu sahaja dan selamat mengekod!
Atas ialah kandungan terperinci Cara Membuat Pakej dalam Go. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!