GO語言項(xiàng)目結(jié)構(gòu)
在進(jìn)行GO語言項(xiàng)目開發(fā)的時(shí)候,我們的代碼總是會(huì)保存在
$GOPATH/src
目錄下鹦马。
在項(xiàng)目經(jīng)過go build
雏婶、go install
或go get
等指令后,會(huì)將下載的第三方包源代碼文件放在$GOPATH/src
目錄下橡庞,產(chǎn)生的二進(jìn)制可執(zhí)行文件放在$GOPATH/bin
目錄下较坛,生成的中間緩存文件會(huì)被保存在$GOPATH/pkg
目錄下。
適合個(gè)人開發(fā)
我們知道源代碼都是存放在
$GOPATH/src
目錄下的扒最,那么我們可以按照下圖來組織我們的代碼丑勤。
image.png
目前流行的項(xiàng)目結(jié)構(gòu)
go語言是通過包來組織代碼文件的,我們可以引入別人的包吧趣,也可以發(fā)布自己的包法竞,為了防止不同包的項(xiàng)目名沖突,我們通常使用
頂級(jí)域名
來作為包名的前綴强挫,這樣就不擔(dān)心項(xiàng)目名沖突的問題了岔霸。
因?yàn)椴皇敲總€(gè)開發(fā)者都擁有自己的頂級(jí)域名
,所以目前流行的方式是使用個(gè)人github.com
用戶名來區(qū)分不同的包俯渤。
image.png
示例:
[root@iZbp19r2vmlr853x5azt4rZ src]# mkdir github.com
[root@iZbp19r2vmlr853x5azt4rZ src]# mkdir github.com/just5325
[root@iZbp19r2vmlr853x5azt4rZ src]# mkdir github.com/just5325/day01
適合企業(yè)開發(fā)
與
目前流行的項(xiàng)目結(jié)構(gòu)
的區(qū)別就是呆细,作者/機(jī)構(gòu)
替換成了項(xiàng)目組
。
image.png