Go 的 golang.org/x/ 系列包和標(biāo)準(zhǔn)庫(kù)包有什么區(qū)別?
在開(kāi)發(fā)過(guò)程中可能會(huì)遇到這樣的情況,有一些包是引入自不同地方的,比如:
golang.org/x/net/html和net/html,golang.org/x/crypto和crypto。
那這是什么原因呢?
引用 Go 官方 Wiki 的說(shuō)法:
The golang.org/x/... repositories are part of the Go Project but outside the main Go tree.
They are developed under looser compatibility requirements than the Go core. In general, they will support the previous two releases and tip.
大概意思就是,Go 標(biāo)準(zhǔn)庫(kù)的包對(duì)向前兼容性有嚴(yán)格的標(biāo)準(zhǔn)。雖然 golang.org/x/... 系列包也是 Go 項(xiàng)目的一部分,但是在比 Go 標(biāo)準(zhǔn)庫(kù)包更寬松的兼容性標(biāo)準(zhǔn)下開(kāi)發(fā),一般它們支持向前兼容兩個(gè)版本。
golang.org/x/... 為官方的輔助包,是一種具有官方試驗(yàn)性質(zhì)的包, 也就是說(shuō)不排除有 BUG, 或者可能健壯性不是特別好;正式的標(biāo)準(zhǔn)庫(kù)是有保障的包,前者有些成熟的功能會(huì)慢慢的放到標(biāo)準(zhǔn)庫(kù)包里。
熱情推薦:
- 技術(shù)博客: 硬核后端技術(shù)干貨,內(nèi)容包括 Python、Django、Docker、Go、Redis、ElasticSearch、Kafka、Linux 等。
- Go 程序員: Go 學(xué)習(xí)路線圖,包括基礎(chǔ)專欄,進(jìn)階專欄,源碼閱讀,實(shí)戰(zhàn)開(kāi)發(fā),面試刷題,必讀書(shū)單等一系列資源。
- 面試題匯總: 包括 Python、Go、Redis、MySQL、Kafka、數(shù)據(jù)結(jié)構(gòu)、算法、編程、網(wǎng)絡(luò)等各種常考題。
參考:

浙公網(wǎng)安備 33010602011771號(hào)