高内聚低耦合

高内聚:一个模块内部各个元素彼此结合的紧密程度,一个软件模块是由相关性很强的代码组成,只负责一项任务,也就是常说的单一责任原则

低耦合:各模块间相互联系紧密程度,模块间接口的复杂性、调用的方式及传递的信息。模块与模块之间,尽可能的使其独立存在。也就是说,让每个模块,尽可能的独立完成某个特定的子功能

SOLID == 单一职责原则告诉我们实现类要职责单一;里氏替换原则告诉我们不要破坏继承体系;依赖倒置原则告诉我们要面向接口编程;接口隔离原则告诉我们在设计接口的时候要精简单一;迪米特法则告诉我们要降低耦合。而开闭原则是总纲(实现效果),它告诉我们要对扩展开放,对修改关闭。

工厂模式

希望通过提供参数灵活控制对象的创建过程(提供什么参数,创建什么对象)

抽象工厂

若干不同组件需要搭配一起使用,因此需要一起生产

………………

设计模式丢网址:https://www.runoob.com/design-pattern/memento-pattern.html

最新文章

  1. echarts-案例
  2. BZOJ 1246 & 有点不一样的概率DP
  3. 最喜欢的VS 键盘快捷键摘抄
  4. 转载:Robotium之Android控件定位实践和建议(Appium/UIAutomator姊妹篇)
  5. Android中几种定位 方式
  6. python进度条代码
  7. [Polymer] Custom Elements: Styling
  8. 3.Apache ZooKeeper数据模型
  9. bzoj2007 NOI2010 网络流转对偶图
  10. vue(9)—— 组件化开发 - webpack(3)
  11. Scala学习笔记(一):入门
  12. Linux下MySql的配置文件my.cnf详细 讲解
  13. oracle 12cR2 smart flash cache实测
  14. Linux 完整卸载oracle和grid软件
  15. kickstart自动安装部署RHEL7
  16. 转css中文英文换行、禁止换行、显示省略号
  17. struts实现国际化
  18. 20145305 《网络对抗》逆向及Bof基础实践
  19. 地位尴尬的WebForm、ASP.NET核心知识(10)
  20. Struts2中防止表单重复提交,global-results定义全局结果处理

热门文章

  1. AS负责人说不必用Kotlin重写,但OkHttp拿Kotlin重写了一遍,就发了OkHttp 4.0!
  2. [51nod] 1267 4个数和为0 暴力+二分
  3. Windows CreateEvent,SetEvent,WaitForSingleObject的用法
  4. django更换数据库时提示"django.db.utils.InternalError: (1366, "Incorrect string value: '\\xE7\\x94\\xA8\\xE6\\x88\\xB7' for column 'name' at row 1")"
  5. 黑马学习SpringMVC 基本开发步骤
  6. Beanshell vs JSR223 vs Java JMeter脚本:性能关闭你一直在等待!
  7. Django-Rest-Framework的序列化之serializers 序列化组件
  8. (转)关于inode和block的两道企业面试题
  9. Java VisualVM添加Visual GC插件
  10. Spark Mllib里如何提取每个字段并转换为***类型(图文详解)