课程名称:GO开发工程师
课程章节:接口的概念、duck typing的概念、接口的定义和实现
课程讲师: ccmouse
课程内容:
- duck typing:描述外部行为而非内部结构(比如玩具鸭:外形像鸭子,能够在水上游动),go语言的类duck typing:灵活(只需要实现接口里的方法)+智能(不需要注释说明入参类型)
- 目录整理:同一个目录下不能有多个main函数(入口函数),需要将不同的main函数所在的文件提取到不同的文件夹。
- go 语言的接口:使用者定义方法,实现者有这个方法。定义一个接口类型,就能适配多种类型的结构体,只要对应的接口里实现了接口里的特定方法。
课程收获:
- 对比动态语言(c++、java)+静态语言(python)的 duck typing,引入go的接口,加深理解。
- go 语言的接口比较灵活,只需要实现者有接口对应的方法就行,不需要关心实现者的其它行为或属性。
- go语言中的接口interface里都是函数,前面不需要加func标识符