Go-命令源码文件
环境变量GOPATH指向的是一个或多个工作区,每个工作区都会有以代码包为基本组织形式的源码文件。
源码文件又分为三种:
- 命令源码文件
- 库源码文件
- 测试源码文件
命令源码文件的用途什么,怎样编写它?
命令源码文件是程序的运行入口,是每个可独立运行的程序必须拥有的。我们可以通过构建或安装,生成对应的可执行文件,后者一般会与该命令源码文件的直接父目录同名。
如果一个源码文件属于main包,并且包含一个无参数声明的main函数,那么它就是命令源码文件。如下代码所示:
package main
import "fmt"
func main() {
fmt.Println("Hello, world!")
}
将其存为demo1.go文件,运行go run demo1.go命令后就会在屏幕(标准输出)中看到hello,world!
当需要模块化编程时,我们往往会将代码拆分到多个文件,甚至拆分到不同的代码包中。但对于一个独立的程序来说,命令源码文件永远只会也只能有一个。如果有与命令源码文件同名的源码文件,那么它也应该声明属于main包。
details
注:图片摘自《Go语言核心36讲》-郝林