我有一個基本的 go 項目結構如下:src/github.com/jeeves/my-project/ |- main.go |- models/ |- user.go的內容main.go是——package mainvar log = initializeLogger()func main() { // do stuff}func initializeLogger() *logging.Logger { // build and return a logger}的內容models/user.go是package maintype User struct { Firstname string `json:"first_name"` Lastname string `json:"last_name"`}// other functions我很好奇設置包結構的最佳方法 -我應該成為而不是的models/user.go一部分嗎?有什么區別,我怎么知道什么時候使用它們?package modelspackage main如果我確實使用package models,如何訪問定義的models/user.go全局對象?(如您所見,我試圖定義一個記錄器一次,并在我的應用程序中訪問它。)logmain.go謝謝!
1 回答

慕勒3428872
TA貢獻1848條經驗 獲得超6個贊
為您的日志記錄 API 制作一個單獨的包,
將代碼構建到包中應該基于功能,包應該相互獨立,它們的名稱應該代表包的含義。
如果你有幾個models
并且是其中之一,并且如果以后要添加user
更多類型,那么制作一個包,如,?,?,它們是 `model.model
user
customer
...
導入時user
做.../modle/user
類似于encoding/json
。
可以添加新包,而無需對現有代碼進行大量更改,只需進行最少的更改。
- 1 回答
- 0 關注
- 137 瀏覽
添加回答
舉報
0/150
提交
取消