什么是设计模式?
模式?是不是一个模子?模式识别——计算机领域的经典问题?
设计模拟?软件的设计模式?不懂!!!
但是在实际编码、调试过程中,会遇到过很是难解的问题:工程代码中有过多的冗余代码——代码复用性不高;需求一旦改变,需要更改很多地方的代码逻辑——代码灵活性不强……
那先看看设计模式的概念吧!
设计模式是一套被反复使用、为多数人知晓、经过分类编目的、代码设计经验的总结。为了编写可重用性代码,让代码更容易被他人理解,并保证代码可靠性而使用的设计思想。
设计模式使代码编制真正工程化。
设计模式是软件行业智慧积累的结晶;它提出了一系列标准术语,概括了相关行业中经验丰富的从业者所应用的所有概念和方法。
常用的23种设计模式如下:
1.单例模式;
2.工厂方法模式;
3.抽象工厂模式;
4.模版方法模式;
5.建造者模式;
6.代理模式;
7.原型模式;
8.中介者模式;
9.命令模式;
10.责任链模式;
11.装饰模式;
12.策略模式;
13.适配器模式;
14.迭代器模式;
15.组合模式;
16.观察者模式;
17.门面模式;
18.备忘录模式;
19.访问者模式;
20.状态模式;
21.解释器模式;
22.享元模式;
23.桥梁模式;
设计模式的起源是面向对象程序设计思想,是面向对象设计的精髓——抽象;面向对象通过类和对象来实现抽象,实现时产生了面向对象的三种重要机制:封装、继承和多态。而这三种机制衍生了各式各样的设计模式。
在运用面向对象思想进行软件设计时,需要遵循以下原则:
1. 单一责任原则;
2. 里氏替换原则;
3. 依赖倒置原则;
4. 接口隔离原则;
5. 迪米特法原则;
6. 开闭原则;
这23种设计模式按设计意图可组织成五类:接口型模式,责任型模式、构造型模式,操作型模式以及扩展型模式。模式的设计意图指出了应用一个模式的价值所在。但上面所说的23中的某种设计模式,并不是仅仅支持一种设计意图。
在软件设计过程中,只要我们尽量遵循以上设计原则,设计出来的软件一定是优秀的,且足够健壮、稳定,并有足够的灵活性来迎接需求的变更。