`

设计模式怎么学

阅读更多

 

       如果你是一个缺乏项目经验的人,手捧一本关于《设计模式》的书,一定会有一种云里雾里的感觉,你无论耗用多长时间,也未必真正领会;如果你是一个项目经验丰富的人,那么即使没学过设计模式,也会知道在什么场合代码应该怎么写,写出来的代码不知不觉符合某种模式的要求。

      觉得设计模式是在实际的项目经验中应用后领会出来的,而非天天捧着书本学出来的。那么其实学习它只需花费几小时的时间,了解:

      什么是设计模式?

      设计模式的作用是什么?

      设计模式都有哪些?

      每个模式都是怎么回事?

      每个模式都适用什么场合?

      这样,在你熟练应用之前,有个大概的印象就足够了。

 

上述只是我自己的学习看法,不代表任何权威。

 

什么是设计模式?

设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结.

个人理解:软件设计的某些特定场合的某些问题的解决思路. 是前人经过大量的实践,总结出来的无论从效率上,扩展性,复用性,可靠性等方面都显现出优势的解决思路。

 

设计模式的作用是什么?

设计的重用; 

为设计提供共同的词汇,每个模式名就是一个设计词汇,其概念使得程序员的交流变得方便; 

在开发文档中采用模式词汇可以让其他人更容易理解你的想法。 

 

设计模式都有哪些?

java中有23种设计模式:

Creational pattern(创建型模式)

 

1.抽象工厂模式         AbstractFactory

2.建造者/生成器模式  Builder

3.工厂方法模式         Factory Method

4.原型模式               Prototype

5.单例模式               Singleton

 

Structural pattern(结构型模式)

 

1.适配器模式 Adapter

2.桥接模式   Bridge

3.组合模式   Composite

4.装饰模式   Decorator

5.外观模式   Facade

6.享元模式   Flyweight

7.代理模式   Proxy

 

Behavioral pattern (行为型模式)

 

1.职责链模式     Chain of Responsibility

2.命令模式        Command

3.解释器模式     Interpreter

4.迭代器模式     Iterator

5.中介者模式     Mediator

6.备忘录模式     Memento

7.观察者模式     Observer

8.状态模式        State

9.策略模式        Strategy

10.模板方法模式  Template Method

11.访问者模式     Visitor

 

      由于博客的篇幅过长可读性不好,所以将 "每个模式都是怎么回事?与每个模式都适用什么场合?" 的描述,转移到另外一篇博文:  《设计模式中每个模式的原理与应用场合》

 

4
8
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

Global site tag (gtag.js) - Google Analytics