23种设计模式以及设计原则(一)

来源:互联网 发布:淘宝三阶魔方 编辑:程序博客网 时间:2024/04/26 12:34

最近看了一本形象生动的关于设计模式的书,写下笔记,记录收获总结。


设计原则:

1.单一职责原则(SRP):
就一个类而言,应该仅有一个引起他变化的原因。
2.开放封闭原则:
软件实体(类、模块、方法等)应该是可扩展的,但又不可修改。应该尽早的对长须中呈现出频发变化的那些部分做出抽象,开发工作不久就应尽快查明可能发生变化的地方,时间越长,调用的越多,正确的抽象就越困难,遵循这个原则可以带来可维护性、可扩展、可复用以及灵活性好,同时也要拒绝不成熟的抽象。
3.依赖倒转原则:
针对接口编程,而非针对实现编程。(如果有一部分的)
4.李氏代换原则:
子类型必须能替换掉他们的父类型。只有这样,父类才能被真正的复用,而子类只需在父类的基础上增加新行为。


设计模式:
1.简单的工厂模式:
例如计算器实例,写一个运算类,加减乘除全都继承这个类,建立一个符号工厂类进行判断,根据对应的符号new出不同的对象。
2.策略模式:
例如商场促销实例,定义了策略类,不同的打折方法分别实现这个类(即算法家族),让他们之间可以相互替换,算法的变化不会影响使用算法的类,结合简单的工厂模式使得根据当前情况的不同创建不同的算法,从而降低了一个类的耦合。
3.装饰者模式:
例如QQ秀实例,动态地给一个对象添加一些额外的职责,就增加功能来说,装饰着模式比生成子类更灵活。
0 0
原创粉丝点击