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

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

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

Go
料青山看我应如是 2021-11-01 15:20:20
我搜索了在项目中组织 Go 文件的解决方案,并找到了这篇文章。我想知道该cmd文件夹的作用是什么,在该帖子的第二部分中使用过。它是 Go 编译器的魔法词吗?另一方面,我正在阅读Go 文档,但里面没有任何关于cmd文件夹的内容。那么这个文件夹呢?在 Go 中构建支持源文件、项目二进制文件、第 3 方包和单元测试的项目文件的最佳实践是什么。
查看完整描述

2 回答

?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

那么这个“cmd”文件夹呢?

帖子已经说得很清楚,概括地说:

  1. 这不是 Go 中的魔法或标准。这只是一个约定。

  2. 将它们放入根文件夹中不可能的子文件夹时,您可以拥有多个二进制文件。

  3. 通过让您将二进制文件作为客户端而不是应用程序的主机或门户,它可以引导您采用所谓的“库驱动开发”方式来构建您的程序。这种分离“帮助您进行更清晰的抽象”和更常见的代码逻辑。

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


查看完整回答
反对 回复 2021-11-01
?
慕桂英4014372

TA贡献1871条经验 获得超13个赞

您引用帖子的作者 明确表示,Camlistore 应用程序向他介绍了 cmd 约定。

如果您查看Camlistore的源代码,您会注意到该项目使用自定义系统进行构建,即“make.go”。

cmd 的特殊性只是因为 Camlistore 项目使用“go run make.go”来构建并且 make.go 知道如何在 cmd 目录中构建目标。或者在更一般的情况下,仅当您使用将其视为特殊的构建系统时, cmd 才是特殊的。


查看完整回答
反对 回复 2021-11-01
  • 2 回答
  • 0 关注
  • 165 浏览
慕课专栏
更多

添加回答

举报

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