栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

包裹声明的目的是什么?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

包裹声明的目的是什么?

软件包的名称不必与目录名称一致。可以

package foobar
在目录中
xyz/go-foobar
。在这种情况下,
xyz/go-foobar
成为
导入路径 ,但是用于质量标识符(功能,类型等)的 软件包名称 将是
foobar

这是一个使它更具体的示例:我创建了一个测试包http://godoc.org/github.com/dmitris/go-
foobar
(源于https://github.com/dmitris/go-
foobar)-您从文档页面可以看到,导入路径为“
github.com/dmitris/go-
foobar”,但包名称为

foobar
,因此您可以将其提供的函数称为
foobar.Demo()
(不是
go-foobar.Demo()
)。

一个类似的真实示例-NSQ Messaging平台的导入路径为“ github.com/nsqio/go-nsq”,而程序包名称为“
nsq”:http
://godoc.org/github.com/nsqio/ go-nsq。但是,为了用户友好和简单起见,标准和推荐的做法是尽可能使导入路径的最后部分和程序包名称相同。

package main
不是没有用的-它告诉Go编译器创建一个可执行文件,而不是.a库文件(带有
go install
go get
;
gobuild
会丢弃编译结果)。可执行
package main
文件以放置文件的目录名称命名。再举一个具体的例子-
我制作了一个测试程序https://github.com/dmitris/go-foobar-
client,将其安装在一起
go getgithub.com/dmitris/go-foobar-client
,您应该将
go-foobar-client
可执行文件放在$ GOPATH /
bin目录中。
package main
Go编译器从放置文件的目录名称中获取可执行文件的名称。
.go
包含该
main()
功能的文件的文件名并不重要-
在上面的示例中,我们可以将其重命名
main.go
client.go
或其他内容,但是只要调用封闭目录
go-foobar-client
,就可以这样命名生成的可执行文件。

有关Go软件包的其他可访问且实用的阅读指南,我建议Dave Cheney的文章“建立Go项目的五个建议”
http://dave.cheney.net/2014/12/01/five-suggestions-for-
setting一个项目。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/514861.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号