E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
设计模式笔记
Java
设计模式笔记
(1)-适配器模式
适配器的定义适配器就是一个接口转换器,它可以是一个独立的硬件接口设备,允许硬件或电子接口与其它硬件或电子接口相连,也可以是信息接口。比如:电源适配器、三角架基座转接部件、USB与串口的转接设备等。两种模式:类适配器模式:使用继承的适配器接口对象适配器模式:使用委托的适配器抽象类涉及角色:源角色(Adaptee):需要适配的类目标角色(Target):想要得到的接口适配器(Adapter):转换装置
黄步欢
·
2020-02-22 07:46
设计模式笔记
四工厂模式
每日一文反以观往,覆以验来;反以知古,覆以知今;反以知彼,覆以知己。动静虚实之理,不合来今,反古而求之。简单工厂由一个工厂对象决定创建出哪一种产品类的实例,一个工厂类,一个产品接口(其实也可以是一个抽象类,甚至一个普通的父类,但通常我们觉得接口是最稳定的,所以基本不需要考虑普通父类的情况),和一群实现了产品接口的具体产品,而这个工厂类,根据传入的参数去创造一个具体的实现类,并向上转型为接口作为结果
summer_lz
·
2020-02-18 06:44
《
设计模式笔记
》之04建造者解析
建造者模式(BuilderPattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。参考了菜鸟教程:https://www.runoob.com/design-pattern/builder-pattern.html介绍意图:将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。主要解决:主要解决在软件系统中,
陆永剑讲师
·
2020-02-16 13:58
设计模式
设计模式笔记
《
设计模式笔记
》之03简洁高效的聊聊单例模式
设计模式是优秀程序员的必备技能,在面试中也会经常提到。前言IT行业是跳槽率较高的行业,这就不频繁的去面试。我作为面试官,如果候选者其他知识都OK的话,最后就会提到设计模式相关的内容。如果回答的一知半解的话,我会跟他说让他来做项目。如果回答的比较好的话,会直接安排到产品组。作用保证了系统内存中该类只有一个对象实例,节省系统资源。对于需要频繁创建销毁的对象,提高系统性能场景需要频繁创建、销毁的对象,创
陆永剑讲师
·
2020-02-16 13:56
设计模式
设计模式笔记
《
设计模式笔记
》之02模式分类
模式可以分为三大类:创建型模式(CreationalPatterns)、结构型模式(StructuralPatterns)、行为型模式(BehavioralPatterns)。创建型模式这些设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用new运算符直接实例化对象。这使得程序在判断针对某个给定实例需要创建哪些对象时更加灵活。工厂模式(FactoryPattern)定义一个用于创建产
陆永剑讲师
·
2020-02-16 13:09
设计模式
设计模式笔记
《
设计模式笔记
》之01七大原则
单一职责原则核心一个类只负责一项职责优点降低类的复杂度提高类的可读性和可维护性降低变更引起的风险如果逻辑比较简单,可以在方法上遵守单一职责,降低代码量实例交通工具分为轮船,飞机、汽车。每个类实现一个职责DAO类一个DAO负责一个表的增删改查。代码代码部分参考了尚硅谷韩顺平老师的内容。/***@program:design_pattern*@descript:公路*@author:luyongjia
陆永剑讲师
·
2020-02-16 13:16
设计模式
设计模式笔记
[scala]Scala
设计模式笔记
1适配器模式importjava.util.logging.Levelimportjava.util.logging.Level._//适配器modelobjectAdapterextendsApp{traitLog{defwarn(msg:String)deferror(msg:String)}finalclassLogger{deflog(level:Level,message:String)
SuperTim
·
2020-02-15 12:00
《
设计模式笔记
》01 之 简洁高效的聊聊单例模式
设计模式是优秀程序员的必备技能,在面试中也会经常提到。前言IT行业是跳槽率较高的行业,这就不频繁的去面试。我作为面试官,如果候选者其他知识都OK的话,最后就会提到**设计模式相关的内容。如果回答的一知半解的话,我会跟他说让他来做项目。如果回答的比较好的话,会直接安排到产品组。作用保证了系统内存中该类只有一个对象实例,节省系统资源。对于需要频繁创建销毁的对象,提高系统性能场景需要频繁创建、销毁的对象
陆永剑讲师
·
2020-02-12 19:54
单例模式
设计模式笔记
及Swift上的实现之一『ABSTRACT FACTORY(抽象工厂)』
前言最近开始在研读《设计模式》一书,书中主要是以C++和Smalltalk为示例。所以我准备写一系列的读书笔记,并尝试将23种设计模式通过Swift实现,从而加深自己的理解。设计模式介绍意图提供一个创建一系列相关或互相依赖对象的接口,而无需指定它们具体的类。动机存在多组功能相似的组件,但用户层(客户)不需要关心组件之间的差异,用户层只与抽象类定义的接口交互适用性一个系统要独立于它的产品的创建、组合
sim_cai
·
2020-02-12 14:29
设计模式笔记
(三): 装饰者模式
有时候我们希望对某个类做一些扩展,该如何做呢?初次尝试最简单的方式是直接继承该类,然后在子类中扩展功能即可,如下图所示:类爆炸在上述图中,只是想在Beverage这个类的基础上加上几种调料,如果直接继承扩展的话,也许就需要非常多的子类才能使得体系完整而且如果某种调料的价格上调了,是不是必须到每个和该调料的相关类里修改价格才行?如果调料的种类越多,子类就越多(想象一下排列组合)。显然,这种方式虽然简
yeonon
·
2020-02-12 13:26
设计模式笔记
3--单例模式
image.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.png单例模式懒汉式image.png懒汉式改进1---synchronizedimage.png加synchronized在11行代码上,注意synchronized加在static上锁的是LazySingleton这个类的class文件,而如果加的这个方法不
执壹
·
2020-02-02 14:15
设计模式笔记
设计模式再学习链接一、创建型01)单例模式(SingletonPattern)双null检查.02)简单工厂(静态方法模式)炒菜:主体依赖抽象,工厂依赖==实现==,判断传入的不同字符串,返回不同实现.03)工厂方法(FactoryMethod)主体依赖==抽象==与==抽象工厂==,多工厂依赖==实现==.04)抽象工厂(AbstractFactory)==抽象工厂==里多个==抽象方法==,如
简乐章
·
2020-01-08 17:30
设计模式笔记
及Swift上的实现之六『ADAPTER(适配器)』
什么是适配器?在真实世界中我们会接触到各种各样的适配器,例如上图的电源适配器。将两座的电源接口转换为USB接口。意图适配器模式则是将一个类的接口转换成客户希望的另外一个接口。(=。=这么看来适配器模式我们是一直都在用啊)动机有时,为了复用而设计的工具箱类,不能够被复用的原因仅仅是因为它的接口与专业应用领域所需要的接口不匹配。例如,我们iOS开发中经常会封装一个网络请求类,用于封装一下固定的传参等其
sim_cai
·
2020-01-05 06:47
2、工厂模式(
设计模式笔记
)
工厂模式的主要作用就是实现了创建者和调用者的分离。一、面向对象设计的基本原则OCP(开闭原则,Open-ClosedPrinciple):一个软件的实体应当对扩展开放,对修改关闭。DIP(依赖反转原则,DependencyInversionPrinciple):要针对接口编程,不要针对实现编程LoD(迪米特法则,LawofDemeter):只与你直接的朋友通信,而避免和陌生人通信二、应用场景JDK
yjaal
·
2020-01-04 13:44
设计模式笔记
(一):单例模式
前言设计模式是面向对象软件设计过程中针对特定问题的简洁而优雅的解决方案,每一种设计模式都能解决一类特定的问题,这对程序员解决问题的能力提高很有帮助,因此最近开始整理设计模式相关的整理,这是第一篇:单例模式,接下来就进入单例模式定义单例模式:单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,单例是一种创建型模式。实现实现一个单例模式并不复杂,实现思路就是用一个变量来标志当前是
william
·
2020-01-04 10:10
javascript
前端
设计模式
设计模式笔记
(17)--观察者模式
观察者模式GOF对观察者模式的定义是:“观察者模式定义了一种多对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生改变时,会通知所有观察者对象,使他们能够自动更新自己。”接下来上代码,以间谍为例packageObserver;publicabstractclassCountry{protectedStringcountryName;protectedSpyspy;publ
球球球球笨
·
2019-12-29 06:43
常用
设计模式笔记
FactoryMethod对如下Product类/*Product.h*/classProduct{public:Product();Product(int);~Product();intgetId();private:intid;};/*Product.cpp*/#include"Product.h"Product::Product(){id=-1;}Product::Product(inti)
LeeYee11
·
2019-12-27 11:36
从零开始的
设计模式笔记
01-为什么要学习设计模式?
为什么要学习设计模式这篇blog的思考不错,我看过很多遍,值得细品:https://www.cnblogs.com/liyuepeng/p/7422902.html首先,作为一名普通的java开发程序员,每天按照业务需求完成crud的操作,在熟悉的语言+框架+工具下完成了一天的工作,工作闲暇时间摸摸鱼,下班了放松自己打打游戏看看剧,第二天重复这样的自己,面对生活的压力,各种鸡汤,焦虑,吐槽工作多,
西街二叔
·
2019-12-27 09:00
设计模式笔记
(四):创建型-抽象工厂模式
抽象工厂模式(AbstractFactoryPattern)意图提供一个创建一系列相关或者互相依赖的对象接口,无需指定他们具体类主要解决解决接口选择问题何时使用系统产品多于一个产品族,而系统只消费其中某一族产品如何解决在一个产品族中定义多个产品关键代码在一个工厂里聚合多个同类产品实例假设生产衣服有商务男装、商务女装、时尚男装、时尚女装等等、都放在各自种类衣柜中。衣柜就承当抽象工厂的作用。其中衣柜中
jiuming
·
2019-12-26 18:33
Asp.net
设计模式笔记
之一:理解设计模式
GOF设计模式著作中的23种设计模式可以分成三组:创建型(Creational),结构型(Structural),行为型(Behavioral)。下面来做详细的剖析。创建型创建型模式处理对象构造和引用。他们将对象实例的实例化责任从客户代码中抽象出来,从而让代码保持松散耦合,将创建复杂对象的责任放在一个地方,这遵循了单一责任原则和分离关注点原则。下面是“创建型”分组中的模式:1.AbstractFa
静以修身俭以养德
·
2019-12-26 13:00
设计模式笔记
(八):结构型-适配器模式
适配器模式(AdapterPattern)意图当一个类的接口转换成客户希望的另外一个接口的适合,适配器模式使得原本由于接口不兼容不能一起工作的类可以在一起工作主要解决在系统中常常要将一些现存的对象放到新环境中,而新环境接口是现存对象不能满足的何时使用1:系统需要使用现有的类,但是这个类的接口不满足系统需要2:想要建立一个可以重复使用的类,用于一些批次之间没有太大关联的一些类,包括一些可能在将来引进
jiuming
·
2019-12-26 06:05
设计模式笔记
---1.设计模式六大原则
前言喜欢看技术性的文章,记得以前总是说设计模式不用太早接触之类的话,促使我决定好好学习设计模式的原因现在我觉得时机也差不多了实在有些代码写完之后发现很难维护,或者改动的地方特别多,肯定是我当时的设计有问题所发表所有内容仅代表个人观点。设计模式概念说到设计模式,第一反应就是很深奥,完全理解不了这个概念到底是什么意思,网上的定义最多的是:设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设
孟婆汤不解渴
·
2019-12-25 12:55
设计模式笔记
(十一): 组合模式
走进餐厅学习工作一天累了,想到餐厅里大吃一顿,服务员把菜单拿上来,你看着菜单上面各种分类,大分类下还有小分类,就想这是不是一个树形结构呢?如果用面向对象的方式该如何表示呢?好像可以用继承,嗯,回去试试。然后迅速解决战斗,立马回家打开电脑。尝试打开电脑的过程中想了想,先搞个抽象基类(继承不都这样干嘛),然后定义两个子类,一个是菜单项表示具体的饭菜,一个是菜单,表示某个分类的菜单,里面包含一个或多个菜
yeonon
·
2019-12-23 19:14
设计模式笔记
——对象创建(纯笔记,JAVA)
历览前贤国与家,成由勤俭破由奢。何须琥珀方为枕,岂得真珠始是车。运去不逢青海马,力穷难拔蜀山蛇。几人曾预南薰曲,终古苍梧哭翠华。——《咏史二首·其二》李商隐听网络课程后的笔记,还不是很理解,小弟先记下,待未来小有理解后再来完善。一、工厂方法在软件系统中,经常面临着创建对象的工作;由于需求的变化,需要创建的对象的具体类型经常变化。工厂方法的就是定义一个用于创建对象的接口,让子类决定实例化哪一个类。工
RMaple_Qiu
·
2019-12-23 04:28
大话
设计模式笔记
(二十六)の总结
设计模式分类(23)创建型模式(5)抽象工厂(AbstractFactory)建造者(Builder)工厂方法(FactoryMethod)原型(Prototype)单例(Singleton)结构型模式(7)适配器(Adapter)桥接(Bridge)组合(Composite)装饰(Decorator)外观(Facade)享元(Flyweight)代理(Proxy)行为型模式(11)观察者(Obs
callmeDevil
·
2019-12-22 15:00
大话
设计模式笔记
(二十六)の总结
设计模式分类(23)创建型模式(5)抽象工厂(AbstractFactory)建造者(Builder)工厂方法(FactoryMethod)原型(Prototype)单例(Singleton)结构型模式(7)适配器(Adapter)桥接(Bridge)组合(Composite)装饰(Decorator)外观(Facade)享元(Flyweight)代理(Proxy)行为型模式(11)观察者(Obs
callmeDevil
·
2019-12-22 15:00
大话
设计模式笔记
(二十五)の访问者模式
访问者模式定义表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。UML图特点访问者模式适用于数据结构相对稳定的系统,它把数据和作用于结构上的操作之间的耦合解脱开,使得操作集合可以相对自由的演化访问者模式的目的是要把处理从数据结构分离出来如果有比较稳定的数据结构,又易于变化的算法的话,使用访问者模式就是比较合适的,因为访问者模式使得算法操作的增
callmeDevil
·
2019-12-22 14:00
大话
设计模式笔记
(二十五)の访问者模式
访问者模式定义表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。UML图特点访问者模式适用于数据结构相对稳定的系统,它把数据和作用于结构上的操作之间的耦合解脱开,使得操作集合可以相对自由的演化访问者模式的目的是要把处理从数据结构分离出来如果有比较稳定的数据结构,又易于变化的算法的话,使用访问者模式就是比较合适的,因为访问者模式使得算法操作的增
callmeDevil
·
2019-12-22 14:00
17、策略模式(
设计模式笔记
)
一、场景某个市场人员接到订单后的报价策略(CRM系统中常见的问题)。报价策略很复杂,可以简单作如下分类:普通客户小批量报价普通客户大批量报价老客户小批量报价老客户大批量报价当然我们可以使用条件语句,但是这很显然不利于扩展,难以维护具体选用哪个报价策略,这需要根据实际情况来确定。这时候,我们采用策略模式即可。二、策略模式策略模式对应于解决某一个问题的一个算法族,允许用户从该算法族中任选一个算法解决某
yjaal
·
2019-12-21 08:30
Java设计模式百例 - 开篇
为了自己能够系统有效地学习设计模式,也希望能够帮助到其他想对设计模式有了解的同学,我边学习边做了这个系列的
设计模式笔记
。本系列主要由Java语言来实现。
享学IT
·
2019-12-16 23:27
设计模式笔记
懂了设计模式,你就懂了面向对象分析和设计(OOA/D)的精要.设计模式之于面向对象系统的设计和开发的作用就犹如数据结构之于面向过程开发的作用一般,可以说,不会设计模式的编码人员不能称之为工程师。面向对象系统的分析和设计实际上追求的就是两点:高内聚和低耦合。自从程序诞生之初,就面临着来自耦合性,内聚性以及可维护性,可扩展性,重用性,灵活性等多方面的挑战。而面向对象是为了解决系统的可维护性,可扩展性,
扯闲话
·
2019-12-16 03:58
大话
设计模式笔记
(二十四)の解释器模式
解释器模式定义给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。目的如果一种特定类型的问题发生的频率足够高,那么可能就值得将该问题的各个实例表述为一个简单语言中的句子。这样就可以构建一个解释器,该解释器通过解释这些句子来解决该问题。UML图好处容易改变和扩展文法,因为该模式使用类来表示文法规则,你可使用继承来改变或扩展该文法。也比较容易实现文法,因为定
callmeDevil
·
2019-12-15 17:00
大话
设计模式笔记
(二十四)の解释器模式
解释器模式定义给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。目的如果一种特定类型的问题发生的频率足够高,那么可能就值得将该问题的各个实例表述为一个简单语言中的句子。这样就可以构建一个解释器,该解释器通过解释这些句子来解决该问题。UML图好处容易改变和扩展文法,因为该模式使用类来表示文法规则,你可使用继承来改变或扩展该文法。也比较容易实现文法,因为定
callmeDevil
·
2019-12-15 17:00
大话
设计模式笔记
(二十三)の享元模式
享元模式定义运用共享技术有效的支持大量细粒度的对象。UML图举个栗子实际开发当中,一个项目如果做得好,如果市场打通到其他地方,那么核心代码其实是可以通用的,只不过用着不同的数据和特性出来的模版而已,这些对用户来说是非透明的。使用最小的开销获得最大的收益,这是所有公司的目的。Talkischeap,showmethecode(屁话少说,放码过来)/***网站抽象类*CreatedbycallmeDe
callmeDevil
·
2019-12-15 15:00
大话
设计模式笔记
(二十三)の享元模式
享元模式定义运用共享技术有效的支持大量细粒度的对象。UML图举个栗子实际开发当中,一个项目如果做得好,如果市场打通到其他地方,那么核心代码其实是可以通用的,只不过用着不同的数据和特性出来的模版而已,这些对用户来说是非透明的。使用最小的开销获得最大的收益,这是所有公司的目的。Talkischeap,showmethecode(屁话少说,放码过来)/***网站抽象类*CreatedbycallmeDe
callmeDevil
·
2019-12-15 15:00
大话
设计模式笔记
(二十二)の中介者模式
中介者模式定义用一个中介对象来封装一系列的对象交互。中介使各对象之间不需要显示的相互引用,从而使其耦合松散,而且可以独立的改变它们之间的交互。UML图举个栗子“联合国”就是世界上各个国家的一个“中介”,许多事情都不是国家之间直接交互,而是通过“安理会”等组织进行协商、投票等过程。Talkischeap,showmethecode(屁话少说,放码过来)/***联合国机构*Createdbycallm
callmeDevil
·
2019-12-15 12:00
大话
设计模式笔记
(二十二)の中介者模式
中介者模式定义用一个中介对象来封装一系列的对象交互。中介使各对象之间不需要显示的相互引用,从而使其耦合松散,而且可以独立的改变它们之间的交互。UML图举个栗子“联合国”就是世界上各个国家的一个“中介”,许多事情都不是国家之间直接交互,而是通过“安理会”等组织进行协商、投票等过程。Talkischeap,showmethecode(屁话少说,放码过来)/***联合国机构*Createdbycallm
callmeDevil
·
2019-12-15 12:00
8、组合模式(
设计模式笔记
)
一、使用组合模式的场景把部分和整体的关系用树形结构来表示,从而使客户端可以用统一的方式处理部分对象和整体对象二、组合模式的核心抽象构件(Component)角色:定义了叶子和容器构件的共同点叶子(Leaf)构件角色:无子节点容器(Composite)构件角色:有容器特征,可以包含子节点三、组合模式工作流程分析组合模式为处理树形结构提供了完善的解决方案,描述了如何将容器和叶子进行递归组合,使得用户在
yjaal
·
2019-12-15 00:03
大话
设计模式笔记
(二十一)の职责链模式
职责链模式定义使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。UML图好处当客户提交一个请求时,请求是沿链传递直至有一个ConcreteHandler对象负责处理它接收者和发送者都没有对方的明确信息,且链中对象自己也并不知道链的结构。结果时职责链可简化对象的相互连接,它们仅需保持一个指向其后继者的引用,
callmeDevil
·
2019-12-14 17:00
大话
设计模式笔记
(二十一)の职责链模式
职责链模式定义使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。UML图好处当客户提交一个请求时,请求是沿链传递直至有一个ConcreteHandler对象负责处理它接收者和发送者都没有对方的明确信息,且链中对象自己也并不知道链的结构。结果时职责链可简化对象的相互连接,它们仅需保持一个指向其后继者的引用,
callmeDevil
·
2019-12-14 17:00
大话
设计模式笔记
(二十)の命令模式
举个栗子路边摊吃烧烤,老板只有一人,又要记住点单,又要忙着收费,客户做什么都要排队。。。反例思路1如果客户多了,请求多,就容易混乱,他叫五串羊肉串,你叫三个烤鸡翅,老板哪里忙得过来。代码中的体现就是一句一句输出,所以应该要有个服务员。。。门面改造Talkischeap,showmethecode(屁话少说,放码过来)/***抽象命令*CreatedbycallmeDevilon2019/12/14
callmeDevil
·
2019-12-14 17:00
大话
设计模式笔记
(二十)の命令模式
举个栗子路边摊吃烧烤,老板只有一人,又要记住点单,又要忙着收费,客户做什么都要排队。。。反例思路1如果客户多了,请求多,就容易混乱,他叫五串羊肉串,你叫三个烤鸡翅,老板哪里忙得过来。代码中的体现就是一句一句输出,所以应该要有个服务员。。。门面改造Talkischeap,showmethecode(屁话少说,放码过来)/***抽象命令*CreatedbycallmeDevilon2019/12/14
callmeDevil
·
2019-12-14 17:00
大话
设计模式笔记
(十九)の桥接模式
举个栗子在M和N两种品牌的手机里面各做通讯录和游戏两种软件。前提:M和N手机之间不通用。反例思路1以手机品牌为主体,各自实现软件。反例思路2以手机软件为主体,各自适配品牌。弊端说明对象的继承关系是在编译时就定义好了,所以无法在运行时改变从父类继承的实现。子类的实现与它的父类有非常紧密的依赖关系,以至于父类实现中的任何变化必然会导致子类发生变化。当你需要复用子类时,如果继承下来的实现不适合解决新的问
callmeDevil
·
2019-12-14 16:00
大话
设计模式笔记
(十九)の桥接模式
举个栗子在M和N两种品牌的手机里面各做通讯录和游戏两种软件。前提:M和N手机之间不通用。反例思路1以手机品牌为主体,各自实现软件。反例思路2以手机软件为主体,各自适配品牌。弊端说明对象的继承关系是在编译时就定义好了,所以无法在运行时改变从父类继承的实现。子类的实现与它的父类有非常紧密的依赖关系,以至于父类实现中的任何变化必然会导致子类发生变化。当你需要复用子类时,如果继承下来的实现不适合解决新的问
callmeDevil
·
2019-12-14 16:00
设计模式笔记
(21)--职责链模式
GOF对职责链模式的定义为:“使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系。将这些对象连成一条链,并且沿着这条链传递该请求,直到有一个对象处理它为止。”每一个请求的处理者首先检查自己的处理权限是否足够,这个权限可以由开发人员设置校验方式,然后对自己有权限处理的事务进行裁断,对自己没有权限处理的请求则转发给处理权限更高一级的处理者。接下来以钦差和皇帝为例,上代码:packa
球球球球笨
·
2019-12-14 04:28
设计模式笔记
开篇
设计模式六大原则单一职责原则(Singleresponsibilityprinciple)解释:就一个类而言,应该仅有一个引起它变化的原因。简单来说,一个类中应该是一组相关性很高的函数,数据的封装。目的:类的复杂性降低,可读性提高,可维护性提高。开闭原则(OpenClosePrinciple)勃兰特·梅耶(BertrandMeyer)在1988年出版的《面向对象软件构造》一书中提出这一原则----
戴先森Davi
·
2019-12-08 00:50
设计模式笔记
——观察者模式
什么是观察者模式(ObserverPattern)观察者模式定义了对象之间的一对多依赖。这样一来,当一个对象状态改变时它的所有依赖者都会收到通知并自动更新。观察者模式的应用观察者模式的应用很广泛。例如在Android开发时需要对控件注册事件监听,控件属于被观察者,在该控件上所注册的事件属于观察者,当控件发生变化时相应的监听事件会立即做出回应。我想大家都有自己喜欢的微信公众号,其实微信公众号的订阅、
小白聊技术
·
2019-12-06 20:28
1、单例模式(
设计模式笔记
)
一、分类创建型模式:单例模式、工厂模式、抽象工厂模式、建造者模式、原形模式结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式行为型模式:模版方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、职责链模式、访问者模式二、单例模式保证一个类只有一个实例,并且提供一个访问该实例的全局访问点2.1常用场景windows的Tas
yjaal
·
2019-12-06 08:20
6、代理模式(
设计模式笔记
)
一、简介核心作用通过代理,控制对对象的访问可以详细控制访问某个(某类)对象的方法,在调用这个方法前做前置处理,调用这个方法后做后置处理(即AOP的微观实现)核心角色抽象角色:定义代理角色和真实角色的公共对外方法真实角色:实现抽象角色,定义真实角色所要实现的业务逻辑,供代理角色调用(关注真正的业务逻辑)代理角色:实现抽象角色,是真实角色的代理,通过真实角色的业务逻辑方法来实现抽象方法,并可以附加自己
yjaal
·
2019-11-29 17:54
设计模式笔记
(九):结构型-桥接模式
桥接模式(BridgePattern)意图将抽象部分和实现部分分离,使他们可以独立变化主要解决在多种可能变化的情况下,用继承会造成类爆炸的问题,不好扩展何时使用实现系统可以有多个角度分类,每一个角度都可能变化如何解决把这种多角度分类分离出来,让他们独立变化,减少之间的耦合关键代码抽象类依赖实现类应用实例1:猪八戒从天蓬元帅投胎到猪转世投胎机制将尘世划分为肉体和灵魂,前者相当于实现化,后者相当于抽象
jiuming
·
2019-11-28 00:56
上一页
3
4
5
6
7
8
9
10
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他