套件

套件 在 Go

1 個練習

關於 套件

在 Go 中,應用程式是以套件來組織的。 套件是位於同一個資料夾中的原始碼檔案的集合。 同一個資料夾中的所有原始碼檔案,在檔案開頭都必須有相同的套件名稱。 依照慣例,套件的名稱會與其所在的資料夾名稱相同。

package greeting

Go 提供了豐富的標準函式庫套件,你可以使用import關鍵字在程式中使用它們。 標準函式庫套件是使用它們的名稱來匯入的。

package greeting

import "fmt"

可以將多個套件以括號包起來,一次匯入。

package greeting

import (
    "errors"
    "fmt"
)

第三方套件是使用套件所在位置的 URL 來匯入的。 匯入時可以為套件取一個別名。 這可以用來避免套件名稱衝突:

package greeting

import (
	"errors"

	errs "github.com/pkg/errors"
)

匯入的套件之後會以套件名稱或別名來表示:

// using the internal errors package
errors.New("Connection not established")

// using the errors package located at github.com/pkg/errors by alias
errs.New("Connection not established")

Go 會根據項目的宣告方式,來決定它是否能被其他套件中的程式碼呼叫。 若要讓函式、型別、變數或常數對外可見(稱為exported),名稱必須以大寫字母開頭。 這類似於其他程式語言(例如 Java)使用public和private等存取修飾子的方式。

package greeting

// Hello is a public function (callable from other packages).
func Hello(name string) string {
    return "Hello " + name
}

// hello is a private function (not callable from other packages).
func hello(name string) string {
    return "Hello " + name
}

同樣的規則也適用於自訂struct型別中的欄位名稱:以大寫字母開頭的欄位名稱是對外可見的,以小寫字母開頭則否。

透過 GitHub 編輯 連結會在新視窗或分頁中開啟

學習 套件

練習已鎖定

再解鎖 1 個練習,就能練習 套件