设计模式其实就是解决问题的思路,是前辈总结出来的有效方式方法, 就是套路!学习设计模式,就是为了站在前辈的肩膀上,能更快捷优雅的解决面向对象程序开发设计问题。
首页> 学海无涯> 设计模式> 设计模式简介
设计模式简介
摘要 设计模式其实就是解决问题的思路,是前辈总结出来的有效方式方法, 就是套路!学习设计模式,就是为了站在前辈的肩膀上,能更快捷优雅的解决面向对象程序开发设计问题。


什么是设计模式  

大家熟知的GOF23种设计模式,源自《Design Patterns: Elements ofReusable Object-Oriented Software》一- 书,

由Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides合著,四人组Gang of Four简称GOF!总结了在面向对象语言开发过程中常见问题的解决方案!

设计模式是面向对象语言开发过程中,遇到的种种场景和问题,然后提

出的思路和解决方案,最后沉淀下来,就成了设计模式。

设计模式其实就是解决问题的思路,是前辈总结出来的有效方式方法,

就是套路!学习设计模式,就是为了站在前辈的肩膀上,能更快捷优雅的解决面向对象程序开发设计问题。


设计模式分类
1创建型设计模式,关注对象的创建   
  2结构型设计模式,关注类与类之间的关系
 3行为型设计模式,关注对象和行为的分离


创建型设计模式
1. Singleton (单例)   
  2. Factory Method (工厂方法)
  3. Abstract Factory (抽象工厂)
  4. Builder (建造者)
  5. Prototype (原型)



5种创建型设计模式,关注对象的创建,其实就是如何new-一个对象的问题,这里也是有非常多的套路,后续再为大家-一解读!


结构型设计模式  
1. Adapter Class/Object (适配器)
 2. Bridge (桥接)   
   3. Composite (组合)    
    4. Decorator (装饰) 
   5. Facade (外观) 
  6. Flyweight (享元)
  7. Proxy (代理)




7种结构型设计模式,关注类与类之间的关系,其实就是折腾组合与继承,为程序提供更好的灵活性和扩展性。

行为型设计模式  
1. Interpreter ( 解释器 )   
  2. Template Method (模板方法 )
 3. Chain of Responsibility (责任链) 
  4. Command ( 命令 )
  5 . lterator (迭代器)
  6.  Mediator (中介者)
  7. Memento(备忘录)
  8. Observer (观察者)
  9. State (状态模式 )
  10. Strategy ( 策略模式 )
  11. Visitor (访问者)


11种行为型设计模式,是最大的一个家族了。行为型设计模式关注的是对象和行为的分离,直白点说就是行为(方法)是放在这个类里面,还是那个类里面,关注的内容更细腻,因此套路也更多!



如何学习使用好设计模式?

1具体的场景和问题

设计模式是为了解决具体场景和问题而诞生的,因此任何设计模式的学习,都离不开一个具体的场景和问题。

2解决方案和思路

条条大路通罗马,一个问题的解决方案会有很多个,但是通过对比解读,才能找出最适合的解决方案。

3解决问题,总结沉淀

搞定了问题,还要总结沉淀,见微知著,举一反三,将来遇到同样的问题才有章可依,而这里的章法,就是设计模式了。

4推广应用,实践出真知

解决一个特定场景是没有意义的,更重要的是在开发实践中去应用去总结,将设计模式融入自己的开发设计,只有真的解决了问题,才能变成自己的!


版权声明:本文由Contione原创出品,转载请注明出处!

本文链接:https://contione.cn/article/detail/17

本文配乐
来说两句吧
最新评论
  • 不想知道!
    不想知道!
    程序设计是一个漫长的过程!耐心学习吧!

  • 二手也是货
    二手也是货
    很棒。我懂了,谢谢大佬