我正在开发一个只有一个package main
的小项目。我敢说,对于小型Golang二进制项目的最佳实践是将所有代码放在单个(main
)命名空间中,所以我就是这样做的。
只是好奇,在package main
内,保持函数/常量/变量导出(MyFunction
)或未导出(myFunction
)是最佳实践吗?
真的没关系。main
包不能导入,所以在这方面是否导出它们并不重要。
但是,如果你要导出它们,那么golint
之类的工具会鼓励你将它们记录下来,所以这可能是导出它们的一个很好的理由
最重要的是保持一致。我喜欢在package main中命名未导出的项目,即使它们不能导出,也以小写字母开头。这是因为这是一个额外的提示,即这些实体不会在其包含包之外使用。您不需要知道声明是in main就可以知道被声明的东西没有在外部使用。