用于在Go中组织项目文件的Cmd文件夹

时间:2015-08-15 19:05:02

标签: go

我搜索了一个在项目中组织Go文件的解决方案,并找到了this post。我想知道cmd文件夹的作用是什么,该帖子的第二部分使用了该文件夹。这对Go编译器来说是一个神奇的词吗? 另一方面,我正在阅读Go documentation,而且那里没有cmd文件夹。

那么这个文件夹怎么样?在Go中构建项目文件的最佳实践是什么,它支持源文件,项目二进制文件,第三方软件包和单元测试。

1 个答案:

答案 0 :(得分:3)

那么这个' cmd'文件夹?

post已经说清楚了,总结一下:

  
      
  1. 在Go中,它不是魔术,也不是标准。这只是一个惯例。
  2.   
  3. 将它们放入子文件夹中时,可以有多个二进制文件,这在根文件夹中是不可能的。
  4.   
  5. 通过让您将二进制文件作为客户端而不是应用程序的主机或门户,它可以驱动您进行所谓的“库驱动开发”。构建程序的方式。这种分离可以帮助您实现更清晰的抽象。并且更常见的是代码逻辑。
  6.   

在Go中构建项目文件的最佳实践是什么,它支持源文件,项目二进制文件,第三方软件包和单元测试。

我不确定最佳做法。官方文档有很多关于项目文件结构的提示。 在我的个人练习中,除了二进制文件的 cmd 文件夹外,我发了 1.将源文件分组到 src 文件夹中的包(子文件夹)中 2.将第三方软件包复制到供应商文件夹;
3.将单元测试文件与其目标源文件并排放置。

这些链接可能会有所帮助:

  

Organizing Go code
  The Go Blog: Organizing Go code
  The Go Blog: Package names
  golang-standards/project-layout