Go 中的相對導入:演練
Go 允許相對導入,使您能夠從同一父目錄包中導入。但是,不鼓勵這種方法,因為它可能會導致歧義並違背建議的程式碼組織實踐。
相反,建議使用絕對路徑或完全限定的套件名稱匯入套件。操作方法如下:
使用絕對路徑
將 Go 包放在公共根目錄下,例如 $GOPATH/src。然後,您可以使用絕對路徑從該根目錄匯入包,例如:
import "github.com/user/my-project/pkg/utils"
使用完全限定的套件名稱
您也可以使用完全限定的套件名稱從同一專案中的不同目錄匯入套件:
import ( "github.com/user/my-project" "github.com/user/my-project/pkg/utils" )
最佳實踐
根據Go 編碼風格指南,每個套件應該有一個唯一的匯入路徑。建議在專案外部導入包時使用絕對路徑,並在同一專案內導入包時使用完全限定的導入路徑。這確保了清晰度並避免導入歧義。
結論
雖然相對導入在 Go 中在技術上是可行的,但由於潛在的歧義和缺乏支持,不應使用它們。通用代碼組織實踐。相反,採用建議的方法,使用絕對或完全限定的套件名稱來匯入套件。
以上是我應該在 Go 中使用相對導入嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!