1.设计模式:面向对象语言开发过程中,遇到种种的场景和问题,提出的解决方案和思路,沉淀下来就是设计模式
设计模式是解决具体问题的套路 使用设计模式可以让程序具有扩展性+健壮性
2.设计模式六大原则:面向对象语言开发过程中,推荐的一些指导性原则(并不是强制要求);没有明确的招数,而且也经常会被忽视/违背;也是前辈总结,也是为了站在前辈的肩膀上
名称 | 违背示例 | 说明 | 实现方式 | 优点 | 缺点 |
单一职责原则SRP |
类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障
|
封装的粒度;一个类只负责一个事;一个方法只负责一件事;接口、程序集也有单一职责原则之说 |
增加类,功能更具体 |
阅读简单,易于维护;扩展升级,减少修改,直接增加类,方便代码重用;简单——稳定——强大 |
类变多了,增加沟通成本 |