包 Package

包是go语言代码组织的基础单元,一个包是同一目录下会被编译在一起的源码的集合。

同一个包下不同源码文件的函数、变量、常量定义都是相互可见的。

包下的.go文件都以package <包名>开头。

模块 Module

模块是被一起发布的、相关的包的集合。一个go仓库通常只有一个坐落在根目录的模块。

模块中,一个go.mod文件定义了模块的路径:所有模块内的包import导入的路径前缀。

初始化模块的命令最为经典:

go mod init <模块>