2 回答
TA贡献1820条经验 获得超10个赞
无需将类型和接口放在单独的文件中。从每个程序包导出的内容都很重要,您可以通过以大写字母开头的名称来表示它们。在C&co。头文件中的内容很重要,因为这就是“导入”(包含)的东西。在Go中,它是导入的包,无论其内容如何组织到不同的源文件中都无所谓(无论如何导入程序都不会看到)。
我个人的建议是避免创建不必要的文件。如果代码相对较短,则将其保存在一个文件中。如果很长,则考虑将感觉很自然的部分分开(例如,如果您使用Java或C ++进行操作,则接口+相关函数可能会形成一个单独的类)。不要仅仅为了将定义从代码中分离而分离任何东西。即使在C语言中,它在Go语言中也没有意义。
TA贡献1827条经验 获得超9个赞
Go编程语言不是C ++,也不是C。像新语言一样使用它。Go没有等效于头文件。它与C ++类的概念仅有松散的联系。由于您不是专业的C ++程序员,因此请忽略Go For C ++ Programmers文章。
首先阅读Go语言编程指南。然后阅读Effective Go。浏览《 Go编程语言规范》,因此您将知道在哪里查找内容。
首先,请查看Go的作者编写的time
软件包文档和源代码。他们没有为接口声明和实现使用单独的文件,所以为什么要这么做?正如您自己说的那样,您尚不知道自己在做什么,那么为什么不从专家的榜样开始呢?
Go编程语言发展的某些动机来自对创建一种比C更好,比C ++简单得多的语言的渴望。考虑到Go的过程特性(通常类似于C),过程设计概念(如耦合和内聚)很有用。这些概念在将Gotime
程序包划分为多个源文件中很明显。一些类设计概念也将很有用,但是请记住,Go不支持继承。
正如Nicklaus Wirth在他的经典论文《逐步改进程序开发》中指出的那样,程序的早期草稿很少是理想的,有时甚至是草率的。即使最终版本也很少是完美的。例如,围棋作者仅在几个月后就重写了围棋json
包。
Go编程语言的设计和实现使其可以使用许多小功能。它倾向于简洁的解决方案。当然,许多功能并未在包装外部公开。函数大小或数量的任意限制很少能以任何语言显示。
Go程序是通过将程序包链接在一起来构造的。一个包又由一个或多个源文件构造而成,这些源文件一起声明了属于该包的常量,类型,变量和函数,并且可以在同一包的所有文件中进行访问。这些元素可以导出并在另一个包中使用。 软件包,Go编程语言规范。
您想要第一个Go软件包做什么?提出可以回答的特定问题,并提供详细信息。
- 2 回答
- 0 关注
- 242 浏览
添加回答
举报