应该在`package main`中导出函数/常量/变量吗?

时间:2016-09-18 16:31:58

标签: go

我正在开发a tiny project只有一个package main。 AFAIK,小Golang二进制项目的最佳实践是拥有所有代码in a single (main) namespace,这就是我所做的。

好奇,在package main范围内,保持导出函数/常量/变量(MyFunction)或未导出(myFunction)的最佳做法是什么?

2 个答案:

答案 0 :(得分:3)

真的没关系。无法导入main个软件包,因此无论您是否导出这些软件包在这方面都无关紧要。

但是,如果你确实导出它们,那么像golint这样的工具会鼓励你记录它们,所以也许这是一个很好的理由继续导出它们。

答案 1 :(得分:3)

最重要的是保持一致。我更喜欢在包main中以小写字母命名未导出的项目,即使它们无法导出。这是因为它是一个额外的提示,这些实体不会在其包含的包之外使用。你不需要知道声明是主要的,知道声明的东西不是外部使用的。