我试图理解Go中的包命名约定背后的思想。大多数软件包的安装和导入方式如下:

import "github.com/howeyc/fsnotify"

我知道软件包名称应该唯一,但是我看不到使用github.com网站的意义。为什么不只使用author/package?喜欢:
import "howeyc/fsnotify"

那不可能发生冲突。还是其他“更短”的策略?是因为它与go get“兼容”吗?还是还有其他原因?

最佳答案

您可以根据需要使用howeyc/fsnotify。当使用github.com/howeyc/fsnotify时,可以理解该程序包托管在Github上。其他存储库也可以工作。

原因是它使使用go get定位和安装依赖项更加容易。否则,您必须手动满足依赖关系。而且由于 fork 存储库在开源世界中非常普遍,因此您可能具有同一作者的修改版本。因此,有助于区分您的项目所依赖的内容。

关于go - Go程序包命名约定背后的想法是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18068096/

10-16 22:38