我有一个基本的 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 关注
- 88 浏览
添加回答
举报
0/150
提交
取消