为了账号安全,请及时绑定邮箱和手机立即绑定

为项目使用多个包与单个包

为项目使用多个包与单个包

Go
RISEBY 2023-04-24 15:55:27
我有一个基本的 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.modelusercustomer...

导入时user.../modle/user

类似于encoding/json

可以添加新包,而无需对现有代码进行大量更改,只需进行最少的更改。


查看完整回答
反对 回复 2023-04-24
  • 1 回答
  • 0 关注
  • 88 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信