Go 語(yǔ)言 導(dǎo)入路徑

2023-03-14 16:58 更新

原文鏈接:https://gopl-zh.github.io/ch10/ch10-02.html


10.2. 導(dǎo)入路徑

每個(gè)包是由一個(gè)全局唯一的字符串所標(biāo)識(shí)的導(dǎo)入路徑定位。出現(xiàn)在import語(yǔ)句中的導(dǎo)入路徑也是字符串。

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

    "golang.org/x/net/html"

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

就像我們?cè)?.6.1節(jié)提到過(guò)的,Go語(yǔ)言的規(guī)范并沒(méi)有指明包的導(dǎo)入路徑字符串的具體含義,導(dǎo)入路徑的具體含義是由構(gòu)建工具來(lái)解釋的。在本章,我們將深入討論Go語(yǔ)言工具箱的功能,包括大家經(jīng)常使用的構(gòu)建測(cè)試等功能。當(dāng)然,也有第三方擴(kuò)展的工具箱存在。例如,Google公司內(nèi)部的Go語(yǔ)言碼農(nóng),他們就使用內(nèi)部的多語(yǔ)言構(gòu)建系統(tǒng)(譯注:Google公司使用的是類(lèi)似Bazel的構(gòu)建系統(tǒng),支持多種編程語(yǔ)言,目前該構(gòu)件系統(tǒng)還不能完整支持Windows環(huán)境),用不同的規(guī)則來(lái)處理包名字和定位包,用不同的規(guī)則來(lái)處理單元測(cè)試等等,因?yàn)檫@樣可以更緊密適配他們內(nèi)部環(huán)境。

如果你計(jì)劃分享或發(fā)布包,那么導(dǎo)入路徑最好是全球唯一的。為了避免沖突,所有非標(biāo)準(zhǔn)庫(kù)包的導(dǎo)入路徑建議以所在組織的互聯(lián)網(wǎng)域名為前綴;而且這樣也有利于包的檢索。例如,上面的import語(yǔ)句導(dǎo)入了Go團(tuán)隊(duì)維護(hù)的HTML解析器和一個(gè)流行的第三方維護(hù)的MySQL驅(qū)動(dòng)。



以上內(nèi)容是否對(duì)您有幫助:
在線(xiàn)筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)