Go 跨多个包共享结构

Go 跨多个包共享结构,go,Go,假设我们有一个客户机-服务器场景,在这种情况下,服务器和客户机都使用公共消息结构相互交谈。因此,我们可以使用struct来定义消息结构,类似这样 type Message struct { SenderId int Content string AuthCode string } 现在,为了避免重复您自己的操作,避免在客户机包和服务器包中都有消息结构,解决此问题的方法是什么 谢谢 有三种不同的方法: 将服务器和客户端保持在同一个包中,就像 包裹 创建单独的包(比如消息,

假设我们有一个客户机-服务器场景,在这种情况下,服务器和客户机都使用公共消息结构相互交谈。因此,我们可以使用
struct
来定义消息结构,类似这样

type Message struct {
    SenderId int
    Content string
    AuthCode string
}
现在,为了避免重复您自己的操作,避免在客户机包和服务器包中都有
消息
结构,解决此问题的方法是什么


谢谢

有三种不同的方法:

  • 将服务器和客户端保持在同一个包中,就像 包裹
  • 创建单独的包(比如
    消息
    公共
    类型
    ,…)并在其中添加共享结构,就像这样做一样
  • 将它们放入
    服务器
    包中,并将其导入
    客户端
    包中。例如,包导入
    net/http

  • 这实际上是个人品味的问题。

    有三种不同的方法:

  • 将服务器和客户端保持在同一个包中,就像 包裹
  • 创建单独的包(比如
    消息
    公共
    类型
    ,…)并在其中添加共享结构,就像这样做一样
  • 将它们放入
    服务器
    包中,并将其导入
    客户端
    包中。例如,包导入
    net/http

  • 这真的是个人品味的问题。

    假设我选择三号门,你能详细说明怎么做吗?或者更好的方法是分享一个例子。谢谢你的回答,添加了示例。:-)什么例子?我遗漏了什么吗?假设我去了三号门,你能详细说明怎么做吗?或者更好的方法是分享一个例子。谢谢你的回答,添加了示例。:-)什么例子?我错过什么了吗?