为什么要将 Golang 接口命名为 "Interface"?

Why would you name a Golang interface "Interface"?

我只知道 Golang 中关于接口名称的一种约定——在单个 func 接口的后缀加上它们的方法名称加上 "er"。我还注意到另一个 - Interface。由于一个包只能有一个类型和一个名称,我推断它一定是作为包的主要接口——你可以称之为 "package interface"。

我还有其他原因吗?

命名接口类型 Interface 不是惯例——它只在标准库中使用过一次:sort.Interface.

也许名字 Interface 不是最好的或最直观的——Sortable 会更直观——但我想 Go 的作者选择了那个名字是因为它和包名一起是更好:sort.Interface vs sort.Sortable(后者重复 sort)。