上述标题读者朋友应该也注意到了是让接口的职责保持单一,而不是实现者单一。

设计模式六大原则之单一原则:

定义

不要存在多于一个导致类变更的原因。**通俗的说,即一个类只负责一项职责。

下面以一个电话模型做参考;拨打一次电话一般包括如下几个过程:

拨号  通话 回应 挂机

从职责上分两个含义:1.拨号和挂机是通信协议上的范畴  2.通话和回应是数据交互的范畴。

所以在设计接口的时候 可以考虑把他们分开对待

但实现类不建议单独实现一个,因为这间接会导致一定程度的复杂性,最后其实还是要有一个类来组合实现类 实现最终的一个电话功能。所以可以考虑一个类实现两个接口,然后最终实现。

最新文章

  1. oracle DML(数据管理语言)sql 基本语句
  2. 软件工程(QLGY2015)博客点评总结
  3. php部分---文件上传:错误处理、 客户端和服务器端的限制
  4. Dynamic CRM 2013学习笔记(四十一)流程4 - 异步工作流(Workflow)用法图解
  5. [CLR via C#]14. 字符、字符串和文本处理
  6. linux命令细究
  7. [Angular2 Router] Programmatic Router Navigation via the Router API - Relative And Absolute Router Navigation
  8. 在 Transact-SQL 中使用 TRY...CATCH
  9. 如何制作css3的3d动画——以骰子旋转为例,详解css3动画属性
  10. WPF笔记(2.7 文字布局)——Layout
  11. js的this作用域
  12. Layout基本属性总结
  13. kobo阅读器安装koreader
  14. ReactiveSwift源码解析(九) SignalProducerProtocol延展中的Start、Lift系列方法的代码实现
  15. 修改WordPress后台登录地址,提高安全性
  16. oracle 分析函数和开窗函数
  17. 树的平衡之AVL树——错过文末你会后悔,信我
  18. 构建stm32最小系统板注意事项
  19. maven项目中使用redis集群报错: java.lang.NumberFormatException: For input string: "7001@17001"
  20. ResourceBundle类的方式来读取config.properties配置文件参数值

热门文章

  1. vue上传视屏或者图片到七牛云
  2. PyQt(Python+Qt)学习随笔:QTreeWidget树型部件中的QTreeWidgetItem项构造方法
  3. 第十四章、Model/View开发:Model/View架构程序设计模式
  4. PyQt学习随笔:Model/View中TableView视图数据项编辑结果及视图数据项的访问
  5. PHP代码审计分段讲解(6)
  6. Java 线程安全问题的本质
  7. 题解 洛谷 P5279 【[ZJOI2019]麻将】
  8. QQ音乐PB级ClickHouse实时数据平台架构演进之路
  9. 移动端 Swiper
  10. WP | [MRCTF2020]Ezpop