定义一个可供多个实现使用的契约
2023-03-20 14:56:02 时间
- 存在不同种类的 SQL 数据库,因此
Open
方法有多种实现。为什么?因为你不会使用相同的代码来启动到 MySQL 数据库和 Oracle 数据库的连接。通过构建接口,你可以定义一个可供多个实现使用的契约。已经实现了DomesticAnimal
的其他类型必须实现Stringer
接口的方法。 - 通过接口嵌入,你可以在不重复的情况下向接口添加功能。这也是有代价的,如果你从另一个模块嵌入一个接口,你的代码将与其耦合 GiveAffection(to Human)embed the interface Stringer into the DomesticAnimal interface
- 其他模块接口的更改将迫使你重写代码。
- 请注意,如果依赖模块遵循语义版本控制方案,则这种危险会得到缓,要创建一个 error ,我们通常调用:
fmt.Errorf()
返回一个error
类型的结果,或者使用errors.New()
函数。 当然,你也可以创建实现error
接口的类型。
相关文章
- 【ASP.NET Core】EF Core - “影子属性”
- 如何用python list删除指定元素?
- 【ASP.NET Core】EF Core 模型与数据库的创建
- 如何处理单元测试中的请求?
- 【.net 深呼吸】连接Access数据库应注意的几点
- 【Win 10 应用开发】Sqlite 数据库的简单用法
- 【Win 10 应用开发】通过数据绑定更新进度条
- 【Win 10 应用开发】UDP广播
- 【Win 10应用开发】延迟共享
- 【Win 10 应用开发】共享目标(UWP)
- 金融/语音/音频处理学术速递[11.24]
- 计算照片的面积(UWP篇)
- 【Win 10应用开发】分阶段进行数据绑定
- 【Win10 应用开发】实现数据的增量加载
- Mysql基础入门知识点总结笔记
- TCP/IP四层模型对比OSI七层网络模型的区别是啥?数据传输过程原来是这样的!
- 【Win10应用开发】签名与验证
- BT × IT | 如何利用神经网络做空间转录组分析?
- DSTG:基于图形的卷积网络对空间转录组数据进行去卷积
- 【WP开发】JSON数据的读与写