【笔记】Go语言项目目录结构

前言

Go语言项目目录结构学习笔记

目录结构

1
2
3
+ src // 需要手动创建,用于存放Go语言源代码文件:`.go`、`.c`、`.h`、`.s`
+ pkg // 无需手动创建,用于存放经由`go install`命令构建后的代码包:`.a`
+ bin // 无需手动创建,用于存放经由`go install`命令构建的可执行文件

命名规范

  • 在根级目录src下,包名要为main
  • 在同级目录下包名要相同
  • 在非根级目录src下,目录的包名应与目录名保持相同,函数名首字母大写

直接引入

  • 同级别目录下无需导包即可直接调用其他文件函数
1
2
3
func main() {
函数名()
}

引入包

  • 如果需要调用的全局函数或全局变量不在当前包下,需要导入包

虽然通常情况下目录名与包名相同,但是导入包时应当与包名为准

1
2
3
4
5
import "包名"

func main() {
包名.函数名()
}
  • 在Jebrains系列的编辑器上,如果只导入包而不使用其中的函数,导包语句将会自动清除

定义包的别名

1
2
3
4
5
import 别名 "包名"

func main() {
别名.函数名()
}

匿名引入

  • 如果引入了还没有使用的包,可以采用匿名引入的方法防止编辑器报错
1
import _ "包名"

完成

参考文献

哔哩哔哩——喔咔咔耶耶
哔哩哔哩——筱筱知晓