go 出现包循环引用的问题,首当其冲的就是程序结构没设计好,最好的方式就是在项目框架构建的时候,将各个模块设计好,避免出现该问题。
尝试分层的设计,高层依赖于低层,低层不依赖于高层,在开发的过程中始终将这些理念记在心中。当两个包有紧密耦合关系时,最好将它们放到一个包内。实在不行的情况下,我们可以使用interface来解决包依赖的问题。
go 包循环引用 (import cycle not allowed)