代码旅行

Day 2 of Golang

学习内容

本次学习了该系列教程的第 015 - 019

知识点整理

一贯作风,写一个 hello world ,在写之前先解释下目录结构,Golang 做了一些目录结构的规定,具体看 How to Write Go Code

一般 GOPATH 下需要建立三个目录

bin - 存放编译后生成的可执行文件
    
pkg - 存放编译后生成的包文件
    
src - 存放项目源码

而在 src 文件夹下,每个 package 都有一个单独的文件夹(与 package 同名)将同名字的 package 文件(package.go)包含起来。

继续写 hello world,创建一个文件 hi.go,将相关代码写入里面

package main
import "fmt"

func main() {
    fmt.Println("hello world")
}

Day 1 of Golang 里面提到的 Go 的一个文件都要归属于一个包,不能单独存在,这里代码第一行就是表示一个包。

第二行表示引入另外一个包,然后这个文件就可以使用所引入包所包含的函数内容了,比如这里用到了 fmt 包中 Println 这个函数。

func main() 可以理解为是定义入口函数。

执行 go build hi.go 进行编译,即可得到一个 hi 文件,这是一个可执行的二进制文件。其中在 windows 下是 hi.exe,直接执行即可得到 hello world,在 macOS 和 Linux 下是 hi,直接运行 ./hi 即可得到 hello world

在用 go build 做编译的时候,生成的文件的默认文件名是当前 go 文件的文件名,可以通过参数修改,比如 go build -o hello hi.go 生成的文件就是 hello

也可以通过 go run hi.go 运行,但其速度要比编译后的要慢,可以在调试程序的时候使用,并不建议在生产力环境下使用。

go buildgo run 是有区别的。go build 后的文件可以运行在没有 Golang 环境的机器中,因为在做编译时已经将执行依赖的包文件打包进入编译后的文件中了,并且该可执行文件大了很多。go run 需要在有 Golang 环境的机器中才可以运行。

Go 源码文件是以 go 为扩展名。

Go 严格区分大小写。

Go 应用程序的执行入口是 main() 函数。

Go 方法是由一条条语句组成,每条语句的结尾不需要加分号表示结束,不加分号的时候不可以将多条语句写在同一行,但如果加了分号则可以将多个语句写在同一行,但不建议这么做。

Go 中 import 到的包或者定义的变量没有被使用到,代码编译不能通过。

Go 中大括号要成对出现,缺一不可。

--- EOF ---

请注意:这里的内容都是原创,你可以免费阅读,但拒绝所有其他任何形式的转载,谢谢配合。如果你发现文章中有错误,请在下面评论。考虑到网络环境,评论插件很多时候打不开,那可以考虑发邮件给我,邮箱地址在我的博客中很容易找到,非常感谢。

The Copyright of all posts & photos posted in tourcoder.com is belong to tourcoder.com. You can read them for free, but you may not reuse anything therein without my permission.

更多内容