一、如果是对源码编译后,再执行,Go 的执行流程如下图
二、如果我们是对源码直接 执行 go run 源码,Go 的执行流程如下图
三、两种执行流程的方式区别
1) 如果我们先编译生成了可执行文件,那么我们可以将该可执行文件拷贝到没有 go 开发环境的机器上,仍然可以运行
2) 如果我们是直接 go run go 源代码,那么如果要在另外一个机器上这么运行,也需要 go 开发环境,否则无法执行。 3) 在编译时,编译器会将程序运行依赖的库文件包含在可执行文件中,所以,可执行文件变大了很多。四、编译和运行说明
1) 有了 go 源文件,通过编译器将其编译成机器可以识别的二进制码文件。
2) 在该源文件目录下,通过 go build 对 hello.go 文件进行编译。可以指定生成的可执行文件名,在windows 下 必须是 .exe 后缀。
3) 如果程序没有错误,没有任何提示,会在当前目录下会出现一个可执行文件(windows 下是.exeLinux 下是一个可执行文件),该文件是二进制码文件,也是可以执行的程序。
4) 如果程序有错误,编译时,会在错误的那行报错。有助于程序员调试错误.
五、什么是运行
1)直接运行生成可执行的Go程序,比如hello.exe
2) 通过运行go run 对源代码文件进行运行。