读书笔记----软件设计原则、设计模式
读书笔记----软件设计原则、设计模式
| 这个作业属于哪个课程 | https://edu.cnblogs.com/campus/gdgy/2021Softwarecodedevelopmenttechnology |
|---|---|
| 这个作业要求在哪里 | https://edu.cnblogs.com/campus/gdgy/2021Softwarecodedevelopmenttechnology/homework/11833 |
| 这个作业的目标 | 1.学习软件设计模式的分类和各种模式的基本内容 |
| 2.了解软件设计原则 | |
| 参考资料:郑阿奇《软件秘笈:设计模式那点事》 |
1.主要内容
1.1设计模式的定义:设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。
1.2设计模式的分类
1.2.1创建型模式
*工厂模式
*抽象工厂模式
*单例模式
*建造者模式
*原型模式
1.2.2结构型模式
*适配器模式
*桥接模式
*组合模式
*装饰器模式
*外观模式
*享元模式
*代理模式
1.2.3行为型模式
*责任链模式
*命令模式
*解释器模式
*迭代器模式
*中介器模式
*备忘录模式
*观察者模式
*状态模式
*空对象模式
*策略模式
*模板模式
*访问者模式
1.3六大原则
1)开闭原则
“对拓展开放,对修改关闭”。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。简而言之,就是为了使程序的拓展性好,易于维护和升级。我们可以使用接口或抽象类达到这样的效果。
2)里氏代换原则
“任何基类可以出现的地方,子类一定可以出现”。只有当派生类可以替换掉基类,且软件单位的功能不受到影响时,基类才能真正被复用,而派生类也能够在基类的基础上增加新的行为。里氏代换原则是对开闭原则的补充。实现开闭原则的关键步骤就是抽象化,而基类与子类的继承关系就是抽象化的具体实现,所以里氏代换原则是对实现抽象化的具体步骤的规范。
3)依赖倒转原则
“面向接口编程”。依赖于抽象而不依赖于具体。
4)接口隔离原则
“使用多个隔离的接口,比使用单个接口更好”。降低类之间的耦合度。其实设计模式就是从大型软件架构出发、便于升级和维护的软件设计思想,它强调降低依赖,降低耦合。
5)最少知道原则
6)“一个实体应当尽量少地与其他实体之间发生相互作用”,主要是为了使系统功能模块相对独立。
合成复用原则
“尽量使用合成或者聚合的方式,而不是使用继承”
2.心得体会
了解并且设计模式可以减少开发工作量,有利于维护扩展。
3.编辑界面截图


浙公网安备 33010602011771号