35 lines
2.0 KiB
Markdown
35 lines
2.0 KiB
Markdown
|
# 设计模式
|
|||
|
|
|||
|
设计模式是我们必须要掌握的一项技能 <br>
|
|||
|
设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、
|
|||
|
让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的;设计模式使代码编制真正工程化;设计模式
|
|||
|
是软件工程的基石脉络,如同大厦的结构一样。
|
|||
|
|
|||
|
|
|||
|
## 六大设计原则
|
|||
|
|
|||
|
* [单一职责原理](principle#1单一职责原理-)
|
|||
|
* [里氏替换原则](principle#1里氏替换原则)
|
|||
|
* [依赖倒置原则](principle#3依赖倒置原则)
|
|||
|
* [接口隔离原则](principle#4接口隔离原则)
|
|||
|
* [迪米特法则](principle#5迪米特法则)
|
|||
|
* [开闭原则](principle#6开闭原则)
|
|||
|
|
|||
|
## 23种设计模式
|
|||
|
|
|||
|
* 创建型模式:
|
|||
|
[简单工厂模式](simpleFactory)、[抽象工厂模式](com.zeekling.abstractFactory)、[单例模式](simgleton) 、[建造者模式](Builder)、[原型模式](com.zeekling.Prototype);
|
|||
|
* 结构型模式:
|
|||
|
[适配器模式](com.zeekling.adapter) 、[桥接模式](bridge)、[代理模式](gproxy)、[组合模式](gcomposite)、[外观模式](gfacade) 、[装饰模式](gdecorate)、[享元模式](gflyweight);
|
|||
|
* 行为型模式:
|
|||
|
[责任链模式](com.zeekling.handler)、[迭代子模式](giterator) 、[备忘录模式](gmemento) 、[命令模式](gcommand)、[状态模式](gstate) 、[观察者模式](gobserver) 、[策略模式](gstrategy) 、[模板模式](gtemplate) 、[访问者模式](gvisitor) 、[中介者模式](gmediator) 、[解释器模式](ginterpreter);
|
|||
|
|
|||
|
|
|||
|
## 存在的问题
|
|||
|
在学习设计模式时,发现了一个问题:自己这样看别人例子,没有实践,对设计模式的理解不是特别容易。不过我尽我可能理解。
|
|||
|
|
|||
|
## 感悟
|
|||
|
|
|||
|
最近发现一味的在网上google看博客是不行的,这样自己对知识很难有一个整体的把握,觉得google看博客和看书结合起来是一个很不错的选择。
|
|||
|
|