教程:go package 简介 | go优质外文翻译 | go 技术论坛-金年会app官方网

包是代码的分组单元,可以帮助您组织程序。它允许您在单个单元中「打包」一个或多个源代码文件,并使其可重用。

如果您来自其他语言,它们就像是命名空间或程序包。 所不同的是,没有子包,包又小又多。

例如:假设您有一个执行天气统计计算的代码,并且正在被您程序中的多处代码使用,您可以将此计算代码放在一个单独的包中,也许会被命名为:statistics。

go 中编写的任何代码都属于一个包

go 程序由一个或多个包组成。

单一概念

您应该将唯一的相关代码放入包中,并对其进行 的命名,这很重要。

例如: 仅提供了一个概念: 压缩。或者, 也是仅提供一个概念: http 的客户端/服务器交互。 再或者,:处理输入/输出的格式。

包含零个或多个函数和状态

一个包可以仅包含一个函数,例如计算某些国家的税率go程序包不需要像其他某些语言那样大

可重用

其他包只能使用包暴露出的函数和数据。此外,无论是否对外暴露,包都可以使用其自身的函数。

仅导入一次

你可以在多个包中导入相同的包,实际上它只会被导入一次。

如果没有包会怎样?

没有包,几乎就没有代码的可重用性和组织。

看看 。 如果没有包,你将如何使用 go 庞大的标准库?各种功能将分散在各处,无法使用。

「example」包。这只是您计算机中的一个目录。包就驻留在目录中。

example package 目录中的所有源文件都具有相同的名称:example。

物理上包只是一个目录。目录名称和包名称应相同。

在包目录中,所有源文件都只属于一个包。在上面的示例中, package 关键字声明 example.go 属于 example 包。 源代码文件应始终具有 `` 声明

***import*** 关键字允许您使用其他包,如示例所示


该文件属于 main 包。 。我通过输入以下命令在命令行中运行它:go run main.go

属于 main 包。

main.go 的输出。

为您准备的练习

t要真正学习一些东西,您需要自己尝试。

  •  示例代码并通过输入 import time 来导入时间包。
  • fmt.println("i am main.") 行之后的新行中键入 fmt.println(time.now()) 来显示当前时间并运行代码。
  • 该练习的代码在 . 可以与您的对比一下。 现在,删除所有的行也不要看示例代码,仅凭记忆输入这个程序。

为您准备的另一个练习

  •  这里的代码,将 package main 更改为 package notmain,通过点击上面的 run button 运行它。
  • 然后,查看底部的错误消息。这是因为 每个可运行程序都应至少具有一个 main 包。
  • 尝试更改其他内容,例如删除 import fmt 以查看会发生什么
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 cc 协议,如果我们的工作有侵犯到您的权益,请及时联系金年会app官方网。

原文地址:

译文地址:https://learnku.com/go/t/47145

本文为协同翻译文章,如您发现瑕疵请点击「改进」按钮提交优化建议
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
网站地图