2017-03-17 80 views
2

我一直在使用go很短的時間,我一直注意到Go(標準庫)和golang.org/x/之間存在重複的包。golang.org軟件包和標準庫之間的區別

我的問題是:他們爲什麼被釋放兩次?在這兩者中,我應該使用哪一個(更新,規範等)?

被釋放兩次,我到目前爲止已經發現有某些樣本包:

  • golang.org/x/net/html VS net/html
  • golang.org/x/crypto VS crypto
  • ,也許更多的,我不記得現在.. 。

回答

1

https://github.com/golang/go/wiki/SubRepositories

這些軟件包是Go Project的一部分,但在主Go樹之外。 它們是在比Go內核更寬鬆的兼容性要求下開發的。

使用標準庫軟件包,除非您強烈需要使用/x/變體,並且可以接受重大變更的風險。

2

golang.org/x/命名空間中的許多軟件包曾經只存在於那裏,隨後被採納到標準庫中。爲了向後兼容,golang.org/x/版本仍然存在。

雖然新應用程序應該始終使用標準庫版本,除非有其他的令人信服的理由(例如使用仍使用舊版本的庫)。

相關問題