代码组织
go应用使用包和模块来组织代码
- 包: 对应到文件系统的 文件夹
- 模块:*.go 的源文件 一个包中会有多个模块 或者 子包
go 项目管理工具
早期的 go 项目使用 gopath 来管理项目,不方便而且容易出错,从golang 1.11 开始使用 gomod 管理项目,当然还有 第三方模块例如 govendor
步骤
- 创建项目
- 初始化项目
- 创建包
- 创建模块
- 相互调用
例如:
mkdir goproject
cd goproject
go mod init example.com/project/goproject
项目结构
#
├── go.mod
├── hello
│ └── hello.go
└── main.go
hello.go
package hello
func Hello() string{
return "hello"
}
main.go
package main
import (
"fmt"
"goproject/hello"
)
func main(){
s := hello.Hello()
fmt.Printf("s: %v\n", s)
}