精通Java设计模式从初见到相爱全集(1-23)

news/2024/7/8 14:04:07

为什么80%的码农都做不了架构师?>>>   hot3.png

1、如何使用?

    设计模式是为了解决问题产生的,一种解决方案,你的问题是什么决定你用什么设计模式, 你没有问题却偏要生搬硬套一个设计模式上去, 这就是没事找事,你的问题就像: 

     自己:医生, 我身高170, 体重60kg, 请问这二十三种药该吃哪一种。

     医生: 吃你妹, 吃脑残片去

2、三大分类:

    设计模式分为三种

    2.1 创建型模式:生产类对象用的,类似于new 类名();

    2.2 结构型模式:定义类和类关系用的,从程序的结构上解决模块之间的耦合问题

    2.3 行为型模式设计到算法和对象间的职责分配

    创建型模式:工厂、抽象工厂、单例、建造者、原型

    结构型模式:适配器、装饰、代理、外观、桥接、组合、享元

    行为型模式:策略、模板、观察者、迭代、责任链、命令、备忘录、状态、访问者、中介、解释器

3、精通设计模式列表(基本每一篇博客都对应项目中的实际应用场景)

单例设计模式

工厂+策略(2种模式)

抽象工厂+模板(2种模式)

建造者

原型

适配器设计模式

装饰设计模式

代理设计模式

桥接设计模式

外观设计模式

组合设计模式

享元设计模式

过滤器设计模式

责任链设计模式

命令设计模式

中介设计模式

个人感觉没有用的设计模式,完全在项目中凭业务逻辑就能够直接完成的设计模式:

迭代器设计模式:在java集合类才用到,项目中不需要

解释器设计模式:没用

备忘录设计模式:类似于回滚的设计模式,没用,直接colne就可以

观察者设计模式:没用,业务逻辑就可以写

状态设计模式:没用,业务逻辑代码可以写

访问者设计模式:没用,业务逻辑可以写

4、总结

    会设计模式跟会用设计模式不一样,别适得其反,为了写设计模式而写设计模式。

    举例说明下:

    设计模式就是一种解决方案,你有百万大军,对方有100人,实力差距非常大,你直接让他们冲上去直接杀死就好,但是你想用一个十面埋伏阵(阵法相当于一种解决方案,一种设计模式)把敌方杀死,虽然结果都一样,但是你不觉得脱裤子放屁找费事吗。

 

转载于:https://my.oschina.net/mdxlcj/blog/1801815


http://www.niftyadmin.cn/n/1998493.html

相关文章

Windows XP深入问答

1、我使用Windows XP系统,请问使用什么方法可以提高启动速度? 使用微软提供的“Bootvis”软件可以有效的提高Windows XP启动速度。这个工具是微软内部提供的,专门用于提升 Windows XP启动速度。下载后解压缩到一个文件夹下,并在“…

android 音频合成_文字怎样转语音,语音怎样合成,视频剪辑怎样配音,语音转文字?...

文字怎样转语音,语音怎样合成,视频剪辑怎样配音,语音怎样转文字?林力早大家好,上一节我们介绍了如何一键分发、怎样录制视频、视频怎样剪辑,这一节我们聊一聊怎样给视频配置声音。想必大家都会遇到这样的问…

java aop做一个接口耗时的计算

看代码: Aspect Component public class TimeCostAspect {private static Logger logger LoggerFactory.getLogger(TimeCostAspect.class);private static final String POINT "execution (* com.ming..*.controller..*.*(..))";Pointcut(POINT)public …

Windows XP 控制台命令详解 - 目录和文件操作命令

编者语:   Windows XP(包括 Windows 2000)的控制台命令是在系统出现一些意外情况下的一种非常有效的诊断和测试以及恢复 系统功能的工具。小编的确一直都想把这方面的命令做个总结,这次辛苦老范给我们整理了这份实用的秘笈。 A…

Unity CommandBuffer的一些学习整理

1.前言 近期在整理CommandBuffer这块资料,之前的了解一直较为混乱。 算不上新东西了,但个人觉得有些时候要比加一个摄像机再转RT廉价一些,至少省了深度排序这些操作。 本文使用两个例子讲解CommandBuffer如何使用,但在此之前稍稍总…

参考文献要不要首行缩进_每一个程序员要遵守的一些优秀编程风格

无论你是业余的还是专业的程序员,正确的编程风格,不但有助于提升软件产品的功能,还可以明显减少软件灾难的产生。今天,我们就来探讨一下有助于我们获取更佳编程风格的一些最好的规则。代码的可读性至上代码要能可阅读和可理解&…

Windows XP 控制台命令详解 - 辅助操作和特殊功能命令

编者语:   Windows XP(包括 Windows 2000)的控制台命令是在系统出现一些意外情况下的一种非常有效的诊断和测试以及恢复系统功能的工具。小编的确一直都想把这方面的命令做个总结,这次辛苦老范给我们整理了这份实用的秘笈。 Cls…

袁岚峰:量子计算远没到可收割的时候

随着量子信息科技的发展,公众对这个领域的关注与日俱增。近来更有网络文章认为:“量子计算机人工智能,将不断迭代出更高级的量子计算机人工智能”,“很可能,在不远的将来,人类在量子计算机人工智能面前&…