.. _write_go: ============== Go代码编写 ============== Go代码组织方法 ================ Go程序通过包(packages)来组织代码。一个package只在相同目录下的一组源代码文件,这些源代码文件将一起编译。在一个源代码文件中的函数,类型,变量以及代码内容可以被同一个package中的所有其他源代码访问。 .. note:: 我理解package(相同目录)相当于一个作用域。 一个仓库(repository)包含了一个或多个模块(module)。一个模块是一组相关Go package,将在一起发布。一个Go repository通常只包含一个模块,位于repository的根。有一个名为 ``go.mod`` 文件声明了模块路径,在模块中的所有package的import路径都包含了。 - 所有出于同一个目录中的代码文件,必须使用同一个包名 - 按照惯例,包名和目录同名 - 一个包定义一组编译后的代码,每段代码都描述包的一部分 在Go语言中,使用 ``import`` 导入包: - Go编译器不允许导入某个包但不使用 - 但是可以在导入包前面加上 ``_`` 接受导入包但不使用 参考 ======== - `How to Write Go Code `_