golang项目结构与其余语言相似,可是仍然有一些须要注意的地方。golang
go 命令依赖一个重要的环境变量:$GOPATH
,它表示GO项目的路径,以下设置bash
export GOPATH=/home/t/gospace
对于GOPATH来讲,容许多个项目目录(Unix中为“:”,Windows中为“;”)。函数
在项目目录中,通常包含三个文件夹,分别为src
,pkg
和 bin
。各个文件夹功能以下,this
在golang中,模块导入包括两种导入方式:相对路径和绝对路径。spa
当前文件同一目录的model目录,可是不建议这种方式来importcode
import ( "./test1" "../test2" )
前提条件须要把该项目加入到golang的GOPATH中,源码
import ( "project/module1" "project/module2/t" )
点操做的含义就是这个包导入以后在你调用这个包的函数时,你能够省略前缀的包名,it
import . "fmt" func test() { Println("test") }
别名操做就是把包命名成另外一个名字编译
import f "fmt" func test() { f.Println("test") }
操做实际上是引入该包,而不直接使用包里面的函数,而是调用了该包里面的init函数class
文件1: module/module1.go
package module1 import "fmt" func init() { fmt.Println("this is module1") }
文件2: main.go
package main import ( "fmt" _ "module" ) func main() { fmt.Println("this is a test") }
output:
this is module1 this is a test