两周多学完Java 23种设计模式

     最近两周任务不是很繁重,对于一个刚入职4个月的菜鸟来说,学习设计模式并灵活使用简直天方夜谭;但是当我询问我导师需要学点啥的时候?“《Java设计模式》,这个必须要学”,一句简单粗略的话就打发我了。我花了将近两周多的时间看了一部分《Java设计模式》、google网上大佬的博客总结和样例展示,阅读一些Java的底层源码,让我对Java设计模式有了一个全面的认识和理解。
  
        接下来我会每周抽时间,献上我所理解的Java设计模式,总结前辈们的经验,并融会贯通,在项目中尝试着使用简单的设计模式,并消化比对不同设计模式之间的区别。
  
  (一)Java设计模式大体上分为三类:
  
  (1)创建型设计模式 (5种):工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式;
  
  (2)结构型设计模式 (7种):适配器模式、装饰器模式、代理模式、组合模式、外观模式、享元模式、桥接模式;
  
  (3)行为型设计模式 (11种):解释器模式、模板模式、访问者模式、中介者模式、策略模式、备忘录模式、状态模式、观察者模式、迭代器模式、命令模式、职责链;
  
  (二)具体三种不同设计模式分类解释:
  
  (1)创建型模式:在软件设计中对象的创建和对象的使用是分开的,因为对象的创建会消耗掉系统的很多资源,所以会单独对对象的创建进行研究,从而能够高效地创建对象就是创建型模式要探讨的问题;
  
  (2)结构型模式:如何设计对象的结构、继承和依赖关系会影响到后续程序的维护性、代码的健壮性、耦合性等,也是很多开发者需要注意的地方;
  
  (3)行为型模式:行为模式不仅描述对象或类的模式,还描述它们之间的通信模式;这些模式刻画了在运行时难以跟踪复杂的控制流,它们将你的注意力从控制流转移到对象间的联系方式上来;行为类模式使用继承机制在类间分派行为,如:模板模式;行为型模式则使用对象聚合、组合而不是继承,一些行为对象模式描述了一组对等的对象怎样相互协作以完成其中任一对象都无法单独完成的任务,如:职责链、中介者和观察者模式等。
  
  (三)具体设计模式列表如下:
  
  加油,坚持,我会持续更新Java设计模式列表展示,一起监督学习!
  
  创建型模式:
  
  《Java设计模式》之 单例模式:https://blog.csdn.net/super_YC/article/details/70141920
  
  《Java设计模式》之 简单工厂模式:https://blog.csdn.net/super_YC/article/details/83862720
  
  《Java设计模式》之 工厂方法模式:https://blog.csdn.net/super_YC/article/details/83862831
  
  《Java设计模式》之 抽象工厂模式:https://blog.csdn.net/super_YC/article/details/83862899
  
  《Java设计模式》之 建造者模式:https://blog.csdn.net/super_YC/article/details/83825595
  
  《Java设计模式》之 原型模式:https://blog.csdn.net/super_YC/article/details/83828118
  
  结构型模式:
  
  《Java设计模式》之 享元模式:https://blog.csdn.net/super_YC/article/details/83794453
  
  《Java设计模式》之 外观模式:https://blog.csdn.net/super_YC/article/details/83820235
  
  《Java设计模式》之 代理模式:https://blog.csdn.net/super_YC/article/details/83827740
  
  《Java设计模式》之 装饰者模式:https://blog.csdn.net/super_YC/article/details/83864063
  
  《Java设计模式》之 桥接模式:https://blog.csdn.net/super_YC/article/details/83824687
  
  《Java设计模式》之 适配器模式:https://blog.csdn.net/super_YC/article/details/83823033
  
  行为型模式:
  
  《Java设计模式》之 迭代器模式:https://blog.csdn.net/super_YC/article/details/83623825
  
  《Java设计模式》之 访问者模式:https://blog.csdn.net/super_YC/article/details/83792271
  
  《Java设计模式》之 中介者模式:https://blog.csdn.net/super_YC/article/details/83793281
  
  《Java设计模式》之 策略模式:https://www.ysyl157.com blog.csdn.net/super_YC/article/details/83824515
  
  《Java设计模式》之 观察者模式:https://blog.csdn.net/super_YC/article/details/83826588
  
  《Java设计模式》之 命令模式:https://www.yongxinzaixian.cn blog.csdn.net/super_YC/article/details/83828518
  
  《Java设计模式》之 备忘录模式:https://www.dasheng178.com/ blog.csdn.net/super_YC/article/details/83828623
  
  《Java设计模式》之 模板模式:https://www.mcyllpt.com blog.csdn.net/super_YC/article/details/83863628
  
  《Java设计模式》之 状态模式:https://www.mhylpt.com blog.csdn.net/super_YC/article/details/83863712
  
  《Java设计模式》之 职责链模式:https://blog.csdn.net/super_YC/article/details/83863827
  
  ---------------------
  

原文地址:https://www.cnblogs.com/qwangxiao/p/9941478.html

时间: 2024-09-30 11:16:33

两周多学完Java 23种设计模式的相关文章

java 23 种设计模式

一.设计模式的分类 总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型模式. 结构型模式,共七种:适配器模式.装饰器模式.代理模式.外观模式.桥接模式.组合模式.享元模式. 行为型模式,共十一种:策略模式.模板方法模式.观察者模式.迭代子模式.责任链模式.命令模式.备忘录模式.状态模式.访问者模式.中介者模式.解释器模式. 其实还有两类:并发型模式和线程池模式.用一个图片来整体描述一下: 二.设计模式的六大原则 1.开闭原则(Open Clo

(转)java 23种设计模式

设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容易被他人理解.保证代码可靠性. 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样.项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都有相应的原理来与之对应,每一个模式描述了一个在我们周

java 23种设计模式学习。

一.3大类设计模式:创建型,结构型,行为型. a.5种创建型模式:工厂方法,抽象工厂,单例,建造者,原型. b.7种结构型模式:适配器,装饰器,代理,外观,桥接,组合,享元. c.11种行为型模式:策略,模板方法,观察者,迭代子,责任链,命令,备忘录, 状态,访问者,中介者,解释器. 注意:除上述3大类外,还有另2类设计模式:并发型,线程池. 二.设计模式6大原则:开闭,里氏代换,依赖倒转,接口隔离,迪米特(最少知道),合成复用. a.开闭:对拓展开发,对修改关闭.程序进行拓展时,不能修改原有的

关于Java 23种设计模式的有趣见解

原文出自:http://developer.51cto.com/art/201205/338617.htm 在网络上流畅很广的一篇旧文,暂时没找到原作者,目前所看到的最早转载时间是 2005 年 2 月 28 日.作者用 轻松的语言,形象解释了 23 种模式,有很好的启发作用. 创建型模式 1.FACTORY-追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不 同,但不管你带MM去麦当劳或肯德基,只管向服务员说"来四个鸡翅"就行了.麦当劳和肯德基就是生产

JAVA 23种设计模式(转)

1.FACTORY?追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了.麦当劳和肯德基就是生产鸡翅的Factory 工厂模式:客户类和工厂类分开.消费者任何时候需要某种产品,只需向工厂请求即可.消费者无须修改就可以接纳新产品.缺点是当产品修改时,工厂类也要做相应的修改.如:如何创建及如何向客户端提供. 2.BUILDER?MM最爱听的就是“我爱你”这句话了,见到不同地方的MM,要能够用她们的方言

java 23种设计模式

备注这是别人总结的本来想转载可惜不会怎么转载(感谢) 以下是学习过程中查询的资料,别人总结的资料,比较容易理解(站在各位巨人的肩膀上,望博主勿究) 创建型抽象工厂模式 http://www.cnblogs.com/java-my-life/archive/2012/03/28/2418836.html工厂方法 http://www.cnblogs.com/java-my-life/archive/2012/03/25/2416227.html建造者模式  http://www.cnblogs.c

java 23种设计模式 深入理解(转)

创建型抽象工厂模式 http://www.cnblogs.com/java-my-life/archive/2012/03/28/2418836.html工厂方法 http://www.cnblogs.com/java-my-life/archive/2012/03/25/2416227.html建造者模式  http://www.cnblogs.com/java-my-life/archive/2012/04/07/2433939.html原型模式 http://www.cnblogs.com

java 23种设计模式 深入理解

以下是学习过程中查询的资料,别人总结的资料,比较容易理解(站在各位巨人的肩膀上,望博主勿究) 创建型抽象工厂模式 http://www.cnblogs.com/java-my-life/archive/2012/03/28/2418836.html工厂方法 http://www.cnblogs.com/java-my-life/archive/2012/03/25/2416227.html建造者模式  http://www.cnblogs.com/java-my-life/archive/201

Java 23种设计模式 (通俗易懂解释收集整理)

(待补充...) P23 TemplateMethod 模板方法模式 讲清楚了为什么叫做模板方法  http://www.cnblogs.com/java-my-life/archive/2012/05/14/2495235.html