10.2. 導入路徑

每個包是由一個全局唯一的字符串所標識的導入路徑定位. 齣現在導入聲明中的導入路徑也是字符串.

import (
    "fmt"
    "math/rand"
    "encoding/json"

    "golang.org/x/net/html"

    "github.com/go-sql-driver/mysql"
)

就像我們在2.6.1節提到過的, Go語言的規范併沒有指明包導入路徑字符串的具體含義, 具體含義是由構建工具來解釋的. 在本章, 我們將深入討論Go工具箱的功能, 包括大家經常使用的構建測試等功能. 當然, 也有第三方擴展的工具箱存在. 例如, Google公司內部的Go碼農, 就使用內部的多語言構建繫統, 用不同的規則來處理名字和定位包, 指定單元測試等待, 這樣可以緊密適配他們內部的繫統.

如果你計劃分享或發布包, 那麽導入路徑最好是全球唯一的. 爲了避免衝突, 所有非標準庫包的導入路徑建議以所在組織的互聯網域名爲前綴; 這樣也有利於包的檢索. 例如, 上面的包導入聲明導入了Go糰隊維護的HTML解析器和一個流行的第三方維護的MySQL驅動.