![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
Peng_Cheng_Wan_Li
我是来自陕西咸阳的一个汉子,很高兴来到CSDN这个学习的大平台!
展开
-
HeadFirst:设计模式-设计模式使用、及剩余其他模式
一、模式模式的定义:模式是在某情景下,针对某问题的某种解决方案。模式的分类:根据模式的目标分为三类:创建型、行为型、和结构型。按模式处理的是类还是对象分为:类模式、对象模式。模式的缺点:设计模式常常产生一些额外的类和对象,所以会增加设计的复杂度。警告:过度使用设计模式可能导致代码被过度工程化,应该用最简单的解决方法完成工作。二、剩余的其他模式桥接模式(Bridge Pattern)使用桥接模式,不只改变你的实现,也改变你的抽象。生成器模式(Builder原创 2020-06-28 22:41:54 · 241 阅读 · 0 评论 -
HeadFirst:设计模式-复合模式
一、复合模式的使用模式通常被一起使用,并被组合在同一个设计解决方案中。复合模式定义:复合模式在一个解决方案中结合两个或多个模式,以解决一般或重复发生的问题。二、MVC模式MVC,mode(模型)、view(视图)、controller(控制器)分别是mvc的三个部分。使用mvc模式,目的是为了解耦,各模块部分只需要处理相应的内容。视图层主要是页面处理展示,控制器层是http请求调用的接口,负责接收请求以及进行转发到具体的业务处理层(即模型层),模型层是具体的业务逻辑处理以及操作数据库原创 2020-06-27 09:34:57 · 265 阅读 · 0 评论 -
HeadFirst:设计模式-状态模式,代理模式
一、状态模式1.模式定义状态模式:允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。原创 2020-06-15 23:16:06 · 190 阅读 · 0 评论 -
HeadFirst:设计模式-模板方法模式,迭代器模式,组合模式
一、模板方法模式1.模板方法模式模板方法模式:在一个方法中定义一个算法的股价,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。模板是一个方法,这些方法将算法定义成一组步骤,其中任何步骤可以是抽象的,由子类负责实现。这样可以确保算法结构保持不变,同时子类提供部分实现。算法中某部分内容是可选的,就用钩子,子类 可以选择实现这个钩子。2.设计原则好莱坞原则:别调用(打电话给)我们,我们会调用(打电话给)你。该设计原则的大意是:原创 2020-06-08 23:45:20 · 149 阅读 · 0 评论 -
HeadFirst:设计模式-命令模式,适配器模式,外观模式
1.模式定义命令模式:将“请求”封装为对象,以便使用不同的请求,队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。命令模式将发出请求的对象和执行请求的对象解耦。调用者通过调用命令对象的execute()发出请求,这会使得接收者的动作被调用。2.适配器模式适配器模式:将一个类的接口,转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。将一个类或多个类的接口编程客户所期望一个接口。适配器模式包含两种:类适配器,对象适配器,分别对应继承,组合实现。原创 2020-05-31 15:23:32 · 407 阅读 · 0 评论 -
HeadFirst:设计模式-单例模式
1.单例模式(Singleleton Pattern) 模式介绍 单例模式是非常常见的设计模式,有一些对象,我们只需要一个,比如下面这些使用场景:线程池(threadpool)、缓存(cache)、日志对象等 模式定义 单例模式:确保一个类只有一个实例,并提供一个全局访问点。单例模式要求只能有一个实例,所以它的构造方法是私有的方法,及private类型的构造方法。构造方法是私有类型,只能在该类中创建实例。所以单例模式提供一个静态方法去创建一个对象。2.基本实现思路单例原创 2020-05-25 23:03:11 · 156 阅读 · 0 评论 -
HeadFirst:设计模式-工厂模式
1.模式定义工厂方法模式:定义了一个创建对象的接口,由子类决定要实例化的类是哪一个,工厂方法让类把实例化推迟到子类。抽象工厂模式:提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类。2.设计原则新的设计原则依赖倒置原则:要依赖抽象,不要依赖具体类。这个很像“针对接口编程,不针对实现编程”,这里强调抽象,不能让高层组件依赖低层组件。目前的设计原则:多用组合,少用继承 针对接口编程,不针对实现编程 为交互对象之间的松耦合努力 类应该对扩展开发,对修改关原创 2020-05-25 21:25:42 · 143 阅读 · 0 评论 -
HeadFirst:设计模式-装饰者模式
1.设计原则开放-关闭原则类应该对扩展开放,对修改关闭。这样的目的:允许类容易扩展,在不修改现有代码的情况下,搭配新的行为。这样的设计具有弹性可以应对改变,可以接受新的功能来应对改变的需求。到目前的设计原则封装变化的部分 多用组合,少用继承 这对接口编程,不针对实现编程 为交互对象之间的松耦合设计而努力 对扩展开放,对修改关闭2.模式介绍装饰器模式:动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。3.实际应用java的i/o使用装原创 2020-05-17 21:37:35 · 143 阅读 · 0 评论 -
HeadFirst:设计模式-观察者模式
1.观察者模式概念简单介绍报社的业务是出版报纸,用户向该报社订购报纸,只要报社有新报纸出版,就会给你送来,一直收到新报纸。当你不想再看报纸时,取消订阅,就不会送来新报纸。出版者+订阅者=观察者模式观察模式与出版者,订阅者类似,出版者改称为“主题”(Subject),订阅者改称为“观察者”(Obserber)。观察者模式定义了对象之间的一对多依赖,当一个对象改变时,它的所有依赖者都会收到通知并自动更新。主题和观察者定义了一对多的关系,观察者依赖于此主题。实际编程中Subject原创 2020-05-17 21:19:20 · 250 阅读 · 0 评论 -
HeadFirst:设计模式-策略模式
从去年大学毕业,到今年也快一年了。但是自己的编码能力还是比较差。在工作中完成开发任务的质量不是那么高,一些问题自己也没有好的思路,同时也意识到设计模式,设计理念的重要性,也打算将设计模式的相关内容再进行学习,从而提高自己的开发能力。1.设计原则将应用中变化的部分提取出来,进行封装 针对接口编程,而不是针对实现编程 多用组合,少用继承将应用中变化的部分提取出来,进行封装,减少对整理的影响。针对接口编程,接口指的不仅是java中的接口interface, 它指的是超类型。多用组合,少用继承原创 2020-05-10 21:18:01 · 193 阅读 · 0 评论 -
23种设计模式概述
转载自其他博客。(转载):https://www.cnblogs.com/Leo_wl/p/6067267.html根据设计模式的参考书 中所提到的,总共有 23 种设计模式。这些模式可以分为三大类:创建型模式(Creational Patterns)、结构型模式(Structural Patterns)、行为型模式(Behavioral Patterns)创建型模式这些设计模式...转载 2019-03-11 17:50:14 · 225 阅读 · 0 评论