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
研磨设计模式
2019-10-17
#基础概念-设计模式六大原则设计模式六大原则](http://www.uml.org.cn/sjms/201211023.asp)《
研磨设计模式
》A2.1章节1.单一职责原则(SRP)一个类应该仅有一个引起它变化的原因
myr1782
·
2024-01-22 12:37
研磨设计模式
day15策略模式
场景问题描述经常会有这样的需要,在不同的时候,要使用不同的计算方式。解决方案策略模式定义:解决思路:
可是我还饿啊
·
2023-08-29 19:32
设计模式
研磨设计模式
day14模板方法模式
目录场景原有逻辑有何问题解决方案解决思路代码实现重写示例模板方法的优缺点模板方法的本质何时选用场景现在模拟一个场景,两个人要登录一个系统,一个是管理员一个是用户,这两个不同身份的登录是由后端对应的两个接口实现的,用户登录只需验证库里是否存在,管理员登录时需要验证加密后的密码是否与数据库数据一致。原有逻辑这里大致说一下,创建了两个实体用来描述用户和管理员传来的用户名、密码。创建两个模块来分别处理用户
可是我还饿啊
·
2023-08-29 19:31
设计模式
模板方法模式
研磨设计模式
day09原型模式
目录场景代码实现有何问题解决方案代码改造模式讲解原型与new原型实例与克隆出来的实例浅度克隆和深度克隆原型模式的优缺点思考何时选用?相关模式场景代码实现定义订单接口packagecom.zsp.bike.day08原型模式;/***订单的接口*/publicinterfaceOrderApi{/***获取订单数量*@return*/publicintgetOrderProductNum();/**
可是我还饿啊
·
2023-08-27 03:05
设计模式
原型模式
java
研磨设计模式
day13组合模式
目录场景不用模式实现代码实现有何问题解决方案代码改造组合模式优缺点思考何时选用场景不用模式实现代码实现叶子对象packageday14组合模式;/***叶子对象*/publicclassLeaf{/***叶子对象的名字*/privateStringname="";/***构造方法,传入叶子对象的名字*/publicLeaf(Stringname){this.name=name;}/***输出叶子对
可是我还饿啊
·
2023-08-27 03:05
设计模式
组合模式
研磨设计模式
day10中介者模式
目录场景思考解决思路模式讲解调用示意图中介者模式的优缺点中介者模式的本质何时选用场景如果没有主板,电脑各个配件怎么交互呢?有些配件接口不同,必须把数据接口进行转换才能匹配上,无敌复杂。有了主板之后就是下面这个样子思考软件开发中针对,内部复杂的我们可以找一个中介者,让中介者去处理这些事情。解决思路白话解析:1.分为中介者和同事两个层级。同事们都和我交互,而我知道怎么把同事的交互跟别人的串联起来,但单
可是我还饿啊
·
2023-08-26 14:03
设计模式
中介者模式
研磨设计模式
day12命令模式
目录定义几个参数场景描述代码示例参数化设置命令模式的优点本质何时选用定义几个参数Command:定义命令的接口。ConcreteCommand:命令接口的实现对象。但不是真正实现,是通过接收者的功能来完成命令要执行的操作Receiver:接收者。真正执行命令的对象。任何类都可能成为一个接收者,只要它能够实现命令要求实现的相应功能Invoker:要求命令对象执行请求,通常持有命令对象。Client:
可是我还饿啊
·
2023-08-26 07:51
设计模式
命令模式
研磨设计模式
day11观察者模式
目录场景代码示例定义观察者模式的优缺点本质何时选用简单变型-区别对待观察者场景我是一家报社,每当我发布一个新的报纸时,所有订阅我家报社的读者都可以接收到代码示例报纸对象packageday11观察者模式;importjava.util.Observable;/***报纸对象*/publicclassNewsPaperextendsObservable{/***报纸的内容*/privateStrin
可是我还饿啊
·
2023-08-26 07:51
设计模式
观察者模式
研磨设计模式
day11代理模式
目录场景代码实现编辑解析定义代理模式调用示意图代理模式的特点本质编辑何时选用场景我有一个订单类,包含订单数、用户名和商品名,有一个订单接口包含了对订单类的getter和setter现在有一个需求,a创建的订单只能a修改,其他人无权修改代码实现定义OrderApi接口packageday10代理模式;publicinterfaceOrderApi{publicStringgetProductName
可是我还饿啊
·
2023-08-26 07:21
设计模式
代理模式
研磨设计模式
day12迭代器模式
目录场景解决方案解决思路代码示例代码改造Java实现迭代器迭代器模式的优点思考何时选用场景大公司收购了一个小公司,大公司的工资系统采用List来记录工资列表,而小公司是采用数组,老板希望通过决策辅助系统来统一查看工资数据不想看到两份不同的工资表。解析:如何能够以一个统一的方式来访问内部实现不同的聚合对象解决方案迭代器模式定义:所谓聚合就是指一组对象的组合结构:比如Java中的集合、数组等解决思路要
可是我还饿啊
·
2023-08-26 07:49
设计模式
迭代器模式
设计模式 pdf 电子书大全
转载自:https://my.oschina.net/u/171160/blog/3059336
研磨设计模式
(电子版高清带书签):https://u632278.ctfile.com/fs/632278
萧潇公举
·
2023-03-09 21:24
电子书总集
设计模式电子书PDF:
研磨设计模式
(电子版高清带书签):https://u632278.ctfile.com/fs/632278-376170149重构与模式:https://u632278.ctfile.com
喔牛慢慢爬
·
2022-08-17 09:36
研磨设计模式
笔记之简单工厂模式
1.不用模式的解决方案1.1示例(1)首先定义接口Api,示例代码如下:publicinterfaceApi{publicvoidtest1(Strings);}(2)有了Api,自然要有实现,此处功能为输出字符串,示例如下:publicclassImplAimplementsApi{@Overridepublicvoidtest1(Strings){System.out.println("Now
六月的尾巴
·
2020-09-13 04:37
Design
Patterns
研磨设计模式
--简单工厂模式
前言:简单工厂模式不是一个标准的设计模式,但是它很常用,简单又神奇,所以我们要好好掌握它。简单工厂的定义:提供一个创建对象实例的功能,而无需关心具体实现。被创建实例的类型可以是接口、抽象类,也可以是具体的类。简单工厂的结构:代码示例1(根据传入参数的不同,进行不同的实例化):代码示例2(从配置文件中获取用于判断的值):工厂模式的优缺点:优点:工厂模式的本质就是选择实现,具有帮助封装和实现客户端与具
weixin_30827565
·
2020-09-13 03:51
研磨设计模式
之抽象工厂模式-1(转)
抽象工厂模式(AbstractFactory)1.1场景问题1.1.1选择组装电脑的配件举个生活中常见的例子——组装电脑,我们在组装电脑的时候,通常需要选择一系列的配件,比如:CPU、硬盘、内存、主板、电源、机箱等等。为了使讨论简单点,只考虑选择CPU和主板的问题。事实上,我们在选择CPU的时候,面临一系列的问题,比如:品牌、型号、针脚数目、主频等问题,只有把这些都确定下来,才能确定具体的CPU。
seaizon
·
2020-09-13 02:56
设计模式
《
研磨设计模式
》读书笔记之:工厂方法模式、抽象工厂模式
前言:本篇系看完《
研磨设计模式
》一书的个人理解和总结,可能存在不正确的地方,看时需要持怀疑态度。另外,所有的图都是示意图,示意,示。
某工程师$
·
2020-09-13 00:08
设计模式
简单工厂——
研磨设计模式
——跟着cc学设计系列
本节课程概览学习简单工厂一:初识简单工厂包括:定义、结构、参考实现二:体会简单工厂包括:场景问题、不用模式的解决方案、使用模式的解决方案三:理解简单工厂包括:典型疑问、认识简单工厂、简单工厂中方法的写法、可配置的简单工厂、简单工厂的优缺点四:思考简单工厂包括:简单工厂的本质、何时选用提前申明简单工厂不是一个标准的设计模式简单工厂非常常用,简单而又神奇,所以还是需要好好掌握可以当成是对学习设计模式的
iteye_9286
·
2020-08-24 05:33
研磨设计模式
《
研磨设计模式
》读书笔记之:备忘录模式、享元模式
前言:本篇系看完《
研磨设计模式
》一书的个人理解和总结,可能存在不正确的地方,看时需要持怀疑态度。另外,所有的图都是示意图,示意,示。
某工程师$
·
2020-08-16 16:37
设计模式
[设计模式] 模板方法模式
主要内容参考自《
研磨设计模式
》一、模式定义定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。
wlmmmm
·
2020-08-16 15:44
设计模式
研磨设计模式
——跟着cc学设计系列 汇总贴
http://sishuok.com/forum/posts/list/5631.html更多教程:http://sishuok.com/forum/posts/list/4339.html设计模式基础——
研磨设计模式
iteye_9286
·
2020-08-16 13:46
研磨设计模式
java设计模式(行为型)之备忘录模式
这样以后就可将该对象恢复到原先保存的状态备忘录模式本质:保存和恢复内部状态参考:
研磨设计模式
(书籍),大话设计模式(书籍)模式图:待补充第1章:实践(1)备忘录接口(Memento.java)packagecom.mcc.core.designPattern.behavior.memento
龙泉太阿
·
2020-08-16 11:23
java设计模式
java设计模式
备忘录模式
行为型模式
设计模式 pdf 电子书大全
2019独角兽企业重金招聘Python工程师标准>>>
研磨设计模式
(电子版高清带书签):https://u632278.ctfile.com/fs/632278-376170149重构与模式:https
weixin_34006468
·
2020-08-16 11:25
研磨设计模式
之简单工厂模式
定义:提供一个创建对象实例的功能,而无需关心其具体的实现,被创建的实例的类型可以是接口,抽象类,也可以是具体的类。简单工厂的结构:Api:定义客户所需要的功能接口。Impl:具体实现Api的实现类,可能会有多个。Factory:工厂,选择合适的实现类来创建Api接口对象。Client:客户端,通过Factory来获取API接口对象,然后面向API接口编程。简单工厂的实现:publicinterfa
归田
·
2020-08-16 10:21
研磨设计模式
研磨设计模式
之桥接模式-4
3.4广义桥接-Java中无处不桥接使用Java编写程序,一个很重要的原则就是“面向接口编程”,说得准确点应该是“面向抽象编程”,由于在Java开发中,更多的使用接口而非抽象类,因此通常就说成“面向接口编程”了。接口把具体的实现和使用接口的客户程序分离开来,从而使得具体的实现和使用接口的客户程序可以分别扩展,而不会相互影响。使用接口的程序结构如图12所示:图12使用接口的程序结构示意图可能有些朋友
iteye_3810
·
2020-08-16 10:51
研磨设计模式
研磨设计模式
之策略模式-6
3.4策略模式结合模板方法模式在实际应用策略模式的过程中,经常会出现这样一种情况,就是发现这一系列算法的实现上存在公共功能,甚至这一系列算法的实现步骤都是一样的,只是在某些局部步骤上有所不同,这个时候,就需要对策略模式进行些许的变化使用了。对于一系列算法的实现上存在公共功能的情况,策略模式可以有如下三种实现方式:一个是在上下文当中实现公共功能,让所有具体的策略算法回调这些方法。另外一种情况就是把策
iteye_3810
·
2020-08-16 10:20
研磨设计模式
设计模式
算法
数据结构
八卦
编程
java设计模式(行为型)之访问者模式
访问者模式的本质:分离数据结构和处理参考:
研磨设计模式
(书籍),大话设计模式(书籍),图解设计模式(书籍)模式图:待补充第1章:实践第0节:模板方法模式(原语、钩子操作实现)(1)访问者接口(Visit
龙泉太阿
·
2020-08-16 10:44
java设计模式
java设计模式
访问者模式
行为型模式
java设计模式(行为型)之策略模式
本模式使得算法可独立于使用它的客户而变化策略模式本质:分离算法,选择实现参考:http://chjavach.iteye.com/blog/696977,
研磨设计模式
(书籍),大话设计模式(书籍)模式图
龙泉太阿
·
2020-08-16 10:44
java设计模式
java设计模式(行为型)之观察者模式
当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新观察者模式本质:触发联动参考:http://chjavach.iteye.com/blog/1632211,
研磨设计模式
(书籍),大话设计模式
龙泉太阿
·
2020-08-16 10:44
java设计模式
java设计模式(行为型)之状态模式
状态模式本质:根据状态来分离和选择行为参考:
研磨设计模式
(书籍),大话设计模式(书籍)模式图:待补充第1章:实践(1)状态接口(State.java)packagecom.mcc.core.designPattern.behavior.state
龙泉太阿
·
2020-08-16 10:44
java设计模式
java设计模式(行为型)之模板方法模式
模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤模板方法模式本质:固定算法骨架参考:
研磨设计模式
(书籍),大话设计模式(书籍)模式图:待补充第1章:实践第0节:模板方法模式(原语、
龙泉太阿
·
2020-08-16 10:44
java设计模式
更新旧博文暨推荐好书《
研磨设计模式
》
最近收到《
研磨设计模式
》一书,感觉写得很好。看了一些章节后,再回想起Ext好像也有很多设计模式应用的地方,于是整理以前的一篇旧文《Ext与设计模式》,就是这么多啦。
sp42a
·
2020-08-16 10:57
JavaScript
OO
Java
设计模式
ext
编程
java
2010
【备忘】javascript设计模式教程
研磨设计模式
视频
1.设计模式是什么.avi2.设计模式有什么.avi3.设计模式的学习方法.avi4.初识和体会简单工厂.avi5.理解简单工厂.avi6.思考简单工厂.avi7.初识和体会外观模式.avi8.理解和思考外观模式.avi9.初识和体会适配器模式.avi10.理解适配器模式.avi11.继续理解和思考适配器模式.avi12.初识和体会单例模式.avi13.理解单例模式.avi14.继续理解单例模式.
qq_38472434
·
2020-08-16 10:12
java设计模式(创建型)之单例模式
参考:http://chjavach.iteye.com/blog/721076,
研磨设计模式
(书籍),大话设计模式(书籍)模式图:待补充第1章:实践第0节:懒汉式单例模式(非线程安全,延迟加载)packagecom.mcc.core.designPattern.build.singleto
龙泉太阿
·
2020-08-16 10:00
java设计模式
研磨设计模式
之 组合模式(Composite) 2——跟着cc学设计系列
15.2解决方案15.2.1组合模式来解决用来解决上述问题的一个合理的解决方案就是组合模式。那么什么是组合模式呢?(1)组合模式定义(2)应用组合模式来解决的思路仔细分析上面不用模式的例子中,要区分组合对象和叶子对象的根本原因,就在于没有把组合对象和叶子对象统一起来,也就是说,组合对象类型和叶子对象类型是完全不同的类型,这导致了操作的时候必须区分它们。组合模式通过引入一个抽象的组件对象,作为组合对
iteye_3810
·
2020-08-15 23:26
研磨设计模式
研磨设计模式
之 组合模式(Composite) 3——跟着cc学设计系列
15.3模式讲解15.3.1认识组合模式(1)组合模式的目的组合模式的目的是:让客户端不再区分操作的是组合对象还是叶子对象,而是以一个统一的方式来操作。实现这个目标的关键之处,是设计一个抽象的组件类,让它可以代表组合对象和叶子对象。这样一来,客户端就不用区分到底是组合对象还是叶子对象了,只需要全部当成组件对象进行统一的操作就可以了。(2)对象树通常,组合模式会组合出树形结构来,组成这个树形结构所使
iteye_3810
·
2020-08-15 23:26
研磨设计模式
研磨设计模式
之 组合模式(Composite) 1——跟着cc学设计系列
15.1场景问题15.1.1商品类别树考虑这样一个实际的应用:管理商品类别树。在实现跟商品有关的应用系统的时候,一个很常见的功能就是商品类别树的管理,比如有如下所示的商品类别树:+服装+男装-衬衣-夹克+女装-裙子-套装仔细观察上面的商品类别树,有以下几个明显的特点:有一个根节点,比如服装,它没有父节点,它可以包含其它的节点树枝节点,有一类节点可以包含其它的节点,称之为树枝节点,比如男装、女装叶子
iteye_3810
·
2020-08-15 23:55
研磨设计模式
设计模式
研磨设计模式
之 迭代器模式(Iterator)2——跟着cc学设计系列
14.2解决方案14.2.1迭代器模式来解决用来解决上述问题的一个合理的解决方案就是迭代器模式。那么什么是迭代器模式呢?(1)迭代器模式定义所谓聚合是:指一组对象的组合结构,比如:Java中的集合、数组等。(2)应用迭代器模式来解决的思路仔细分析上面的问题,要以一个统一的方式来访问内部实现不同的聚合对象,那么首先就需要把这个统一的访问方式定义出来,按照这个统一的访问方式定义出来的接口,在迭代器模式
iteye_3810
·
2020-08-15 23:55
研磨设计模式
研磨设计模式
之 中介者模式(Mediator)2 ——跟着cc学设计系列
10.2解决方案10.2.1中介者模式来解决用来解决上述问题的一个合理的解决方案就是中介者模式。那么什么是中介者模式呢?(1)中介者模式定义(2)应用中介者模式来解决的思路仔细分析上面的问题,根本原因就在于多个对象需要相互交互,从而导致对象之间紧密耦合,这就不利于对象的修改和维护。中介者模式的解决思路很简单,跟电脑的例子一样,中介者模式通过引入一个中介对象,让其它的对象都只和中介对象交互,而中介对
iteye_3810
·
2020-08-15 23:54
研磨设计模式
设计模式
研磨设计模式
之 原型模式(Prototype)3 ——跟着cc学设计系列
9.3模式讲解9.3.1认识原型模式(1)原型模式的功能原型模式的功能实际上包含两个方面:一个是通过克隆来创建新的对象实例另一个是为克隆出来的新的对象实例复制原型实例属性的值原型模式要实现的主要功能就是:通过克隆来创建新的对象实例。一般来讲,新创建出来的实例的数据是和原型实例一样的。但是具体如何实现克隆,需要由程序自行实现,原型模式并没有统一的要求和实现算法。(2)原型与new原型模式从某种意义上
iteye_3810
·
2020-08-15 23:54
研磨设计模式
研磨设计模式
之 迭代器模式(Iterator)3——跟着cc学设计系列
14.3模式讲解14.3.1认识迭代器模式(1)迭代器模式的功能迭代器模式的功能主要在于提供对聚合对象的迭代访问。迭代器就围绕着这个“访问”做文章,延伸出很多的功能来。比如:以不同的方式遍历聚合对象,比如向前、向后等对同一个聚合同时进行多个遍历以不同的遍历策略来遍历聚合,比如是否需要过滤等多态迭代,含义是:为不同的聚合结构,提供统一的迭代接口,也就是说通过一个迭代接口可以访问不同的聚合结构,这就叫
iteye_3810
·
2020-08-15 23:24
研磨设计模式
设计模式
java
数据库
《
研磨设计模式
》 配套源代码
《
研磨设计模式
》一书的源代码已经整理好了,现提供各位朋友下载。
iteye_3810
·
2020-08-15 23:24
研磨设计模式
研磨设计模式
配套源代码发放
《
研磨设计模式
》一书的源代码已经整理好了,现提供各位朋友下载。
iteye_3810
·
2020-08-15 23:24
研磨设计模式
设计模式
研磨设计模式
之装饰模式-3
3模式讲解3.1认识装饰模式(1)模式功能装饰模式能够实现动态的为对象添加功能,是从一个对象外部来给对象增加功能,相当于是改变了对象的外观。当装饰过后,从外部使用系统的角度看,就不再是使用原始的那个对象了,而是使用被一系列的装饰器装饰过后的对象。这样就能够灵活的改变一个对象的功能,只要动态组合的装饰器发生了改变,那么最终所得到的对象的功能也就发生了改变。变相的还得到了另外一个好处,那就是装饰器功能
iteye_3810
·
2020-08-15 20:43
研磨设计模式
JAVA六大设计原则 和 23种设计模式
相关书籍:《大话设计模式》、《Java设计模式》、《设计模式之禅》、《
研磨设计模式
》、《HeadFirst设计模式》JAVA六大设计原则JAVA设计模式提供六个基本原则,分别是:开闭原则(OCP)-TheOpen-ClosedPrinciple
xhBruce
·
2020-08-11 17:02
Java
研磨设计模式
之观察者模式 学习笔记
观察者模式按照模式的定义,目标和观察者之间是典型的一对多的关系。也可以是一对一的关系,只有一个观察者。在观察者模式中,观察者和目标是单向依赖的,只有观察者依赖于目标,而目标是不会依赖于观察者的。它们之间联系的主动权掌握在目标手中,只有目标知道什么时候需要通知观察者,在整个过程中,观察者始终是被动的,被动的等待目标的通知,等待目标传值给它。对目标而言,所有的观察者都是一样的,目标会一视同仁的对待。当
awfskoo
·
2020-08-05 10:37
设计模式
大话设计模式:策略模式
原文:设计模式随笔系列:鸭子-策略模式(Strategy)[原]另一篇:
研磨设计模式
之策略模式:http://www.uml.org.cn/sjms/201009092.asp前言万事开头难,最近对这句话体会深刻
Damon_tong
·
2020-08-03 05:21
java
棱角分明设计模式 - 原则
本系列取材于《
研磨设计模式
》,侧重于各模式的优缺点、主战场及变式。当然,我的风格依旧是:挑着写如果你发现少了哪个模式,也不必吃惊哈哈哈。新手入门或者进阶可以去我的另外两个系列转转。
看,未来
·
2020-07-27 12:01
#
棱角分明设计模式
设计模式基础——
研磨设计模式
——跟着cc学设计系列
提前声明本视频课程是北京Java私塾原创精品书籍《
研磨设计模式
》一书的配套学习视频,由《
研磨设计模式
》的第一作者CC录制建议结合《
研磨设计模式
》一书进行学习,效果会更佳《
研磨设计模式
》一书,知识全面、系统
iteye_9286
·
2020-07-16 00:06
研磨设计模式
相关模式辨析——
研磨设计模式
——跟着cc学设计系列
本节课程概览相关模式关于相关模式的辨析、比较、选择以及组合使用等。提前说明模式选择的方法1:模式的功能——看是否能解决问题2:模式的本质——看模式是否主要用来解决这类问题3:模式的适用程度——看使用这个模式是否贴切,看是否需要变形4:应用模式的复杂程度——看使用模式带来的开发复杂度是否可接受或可控5:应用模式的代价——看使用模式的代价是否可接受或可控,如:引入过多的对象、耗费更多的内存等很多模式都
iteye_9286
·
2020-07-14 12:02
研磨设计模式
研磨设计模式
之 观察者模式(Observer) 3——跟着cc学设计系列
12.3模式讲解12.3.1认识观察者模式(1)目标和观察者之间的关系按照模式的定义,目标和观察者之间是典型的一对多的关系。但是要注意,如果观察者只有一个,也是可以的,这样就变相实现了目标和观察者之间一对一的关系,这也使得在处理一个对象的状态变化会影响到另一个对象的时候,也可以考虑使用观察者模式。同样的,一个观察者也可以观察多个目标,如果观察者为多个目标定义的通知更新方法都是update方法的话,
iteye_3810
·
2020-07-14 12:10
研磨设计模式
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
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
其他