lotus

贵有恒何必三更眠五更起 最无益只怕一日曝十日寒

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  1846 随笔 :: 0 文章 :: 109 评论 :: 288万 阅读

随笔分类 -  设计模式

摘要:在设计原则中有这样一句话“我们应该针对接口编程,而不是正对实现编程”。但是我们还是在一直使用new关键字来创建一个对象,这不就是在针对实现编程么? 针对接口编程,可以隔离掉以后系统可能发生的一大堆改变。入股代码是针对接口而写,那么可以通过多态,它可以与任何新类实现该接口。但是,当代码使用一大堆的具体 阅读全文
posted @ 2019-05-02 19:16 白露~ 阅读(258) 评论(0) 推荐(0) 编辑

摘要:在我们实际生活中代理情况无处不在!你在淘宝上面买东西,你使用支付宝平台支付,卖家请物流公司发货、你请朋友帮你拿包裹,在这个过程汇总支付宝、物流公司、你朋友都扮演者“第三者”的角色在帮你完成物品的购买,这里的第三者我们可以将其称之为代理者。 所谓代理就通过引用一个新的对象来实现对真实对象的操作或者将新 阅读全文
posted @ 2019-05-02 18:40 白露~ 阅读(463) 评论(0) 推荐(0) 编辑

摘要:面向对象可以非常方便的解决一些扩展性的问题,但是在这个过程中系统务必会产生一些类或者对象,如果系统中存在对象的个数过多时,将会导致系统的性能下降。对于这样的问题解决最简单直接的办法就是减少系统中对象的个数。 享元模式提供了一种解决方案,使用共享技术实现相同或者相似对象的重用。也就是说实现相同或者相似 阅读全文
posted @ 2019-05-02 18:34 白露~ 阅读(310) 评论(0) 推荐(0) 编辑

摘要:前面介绍的适配器模式讲的是如何将一个接口转换成客户所需要的另一个接口,它的目的在于 解决接口的不兼容性问题。现在这里有这样一个模式,它的目的在于如何简化接口,它可以将多个类的复杂的一切隐藏在背后,只显露 出一个干净美观的外观。 晚上睡觉之前,你总是喜欢看电视,在你进入卧室的时候你需要完成以下几个步骤 阅读全文
posted @ 2019-05-01 22:07 白露~ 阅读(244) 评论(0) 推荐(0) 编辑

摘要:我们都知道,可以使用两种方式给一个类或者对象添加行为。 一是使用继承。继承是给一个类添加行为的比较有效的途径。通过使用继承,可以使得子类在拥有自身方法的同时,还可以拥有父类的方法。但是使用继承是静态的,在编译的时候就已经决定了子类的行为,我们不便于控制增加行为的方式和时机。 二是使用关联。组合即将一 阅读全文
posted @ 2019-05-01 22:03 白露~ 阅读(233) 评论(0) 推荐(0) 编辑

摘要:我们对于这个图片肯定会非常熟悉,这两幅图片我们都可以看做是一个文件结构,对于这样的结构我们称之为树形结构。在数据结构中我们了解到可以通过调用某个方法来遍历整个树,当我们找到某个叶子节点后,就可以对叶子节点进行相关的操作。我们可以将这颗树理解成一个大的容器,容器里面包含很多的成员对象,这些成员对象即可 阅读全文
posted @ 2019-05-01 21:06 白露~ 阅读(306) 评论(0) 推荐(0) 编辑

摘要:在开始学java的时候老师讲到继承的时候,总是喜欢用一个例子来讲解,那就是画图,这里有一个画笔,可以画正方形、长方形、圆形(这个大家都知道怎么做吧,我就不解释了)。但是现在我们需要给这些形状进行上色,这里有三种颜色:白色、灰色、黑色。这里我们可以画出3*3=9中图形:白色正方形、白色长方形、白色圆形 阅读全文
posted @ 2019-05-01 20:59 白露~ 阅读(249) 评论(0) 推荐(0) 编辑

摘要:假如我们又这样软件系统,我们希望它能够和一个新的库搭配使用,但是这个库所提供的接口与我们的软件系统不兼容,我们不想改变现有代码就能解决这个问题,怎么办?这个时候我们就需要将这个新的库接口转换成我们所需要的接口,这就是适配器模式设计动机。 一、模式定义 何谓适配器模式?适配器模式就是将一个类的接口,转 阅读全文
posted @ 2019-05-01 20:17 白露~ 阅读(727) 评论(0) 推荐(0) 编辑

摘要:转自:https://www.cnblogs.com/chenssy/p/3357683.html 从七月份开始一直到九月底才看完设计模式,在这个过程中我不敢说我已经掌握了那本书里面的内容,或者说1/5,没能力说也没有资格说。但是结果不重要,重要的是这个过程我的收获!主要包括如下几个方面: 1、认识 阅读全文
posted @ 2019-04-29 00:28 白露~ 阅读(197) 评论(0) 推荐(0) 编辑

摘要:应该说设计模式是我们在写代码时候的一种被承认的较好的模式,就像一种宗教信仰一样,大多数人承认的时候,你就要跟随,如果你想当一个社会存在的话。好的设计模式就像是给代码造了一个很好的骨架,在这个骨架里,你可以知道心在哪里,肺在哪里,因为大多数人都认识这样的骨架,就有了很好的传播性。这是从易读和易传播来感 阅读全文
posted @ 2019-04-29 00:14 白露~ 阅读(263) 评论(0) 推荐(0) 编辑

摘要:设计模式作为工作学习中的枕边书,却时常处于勤说不用的尴尬境地,也不是我们时常忘记,只是一直没有记忆。 今天,螃蟹在IT学习者网站就设计模式的内在价值做一番探讨,并以spring为例进行讲解,只有领略了其设计的思想理念,才能在工作学习中运用到“无形”。 Spring作为业界的经典框架,无论是在架构设计 阅读全文
posted @ 2019-04-29 00:13 白露~ 阅读(517) 评论(0) 推荐(0) 编辑

摘要:一.设计模式的思维导向图 二. 首先科普一下设计模式的七大原则: 设计模式(面向对象)有七大原则,分别是: 1.开放-封闭原则 通俗:对扩展开发,对修改关闭 2.单一职责原则 通俗:一个类只做一件事 3.依赖倒转原则 通俗:类似IOC,采用接口编程 4.迪米特法则(也称为最小知识原则) 通俗:高内聚 阅读全文
posted @ 2019-04-28 23:05 白露~ 阅读(10501) 评论(0) 推荐(0) 编辑

摘要:本文主要是归纳了JDK中所包含的设计模式,包括作用和其设计类图。首先来个总结,具体的某个模式可以一个一个慢慢写,希望能对研究JDK和设计模式有所帮助。一、设计模式是什么(1)反复出现问题的解决方案(2)增强软件的灵活性(3)适应软件不断变化二、学习JDK中设计模式的好处(1)借鉴优秀代码的设计,有助 阅读全文
posted @ 2019-04-28 22:34 白露~ 阅读(1120) 评论(0) 推荐(0) 编辑

摘要:结构型模式: 适配器模式: 用来把一个接口转化成另一个接口。 java.util.Arrays#asList() javax.swing.JTable(TableModel) java.io.InputStreamReader(InputStream) java.io.OutputStreamWri 阅读全文
posted @ 2019-04-28 22:28 白露~ 阅读(881) 评论(0) 推荐(0) 编辑

摘要:最近在学习dubbo,学到dubbo自然要接触注册中心zookeeper,zookeeper里涉及发布和订阅问题。 观察者模式之JAVA实现:JAVA设计模式之观察者模式 发布订阅模式之JAVA实现:发布者订阅者模式之JAVA实现 观察者模式(Observer)和发布(Publish/订阅模式(Su 阅读全文
posted @ 2019-04-23 23:35 白露~ 阅读(2161) 评论(0) 推荐(2) 编辑

摘要:1.发布者接口 package com.shoshana.publishsubscribe;public interface IPublisher<M> { public void publish(SubscribePublish subscribePublish, M message, boole 阅读全文
posted @ 2019-04-23 23:26 白露~ 阅读(12556) 评论(3) 推荐(0) 编辑

摘要:https://blog.csdn.net/qq_40369829/article/details/80374131 简介原则分类创建型模式结构型模式行为型模式类图参考简介设计模式是在特定环境下,为解决某一类通用软件设计问题提供的一套定制的解决方案,描述了对象和类之间的相互作用。优点: 提供标准以供 阅读全文
posted @ 2019-04-23 22:28 白露~ 阅读(435) 评论(0) 推荐(0) 编辑

摘要:设计模式作为工作学习中的枕边书,却时常处于勤说不用的尴尬境地,也不是我们时常忘记,只是一直没有记忆。今天,在IT学习者网站就设计模式的内在价值做一番探讨,并以spring为例进行讲解,只有领略了其设计的思想理念,才能在工作学习中运用到“无形”。Spring作为业界的经典框架,无论是在架构设计方面,还 阅读全文
posted @ 2019-04-23 22:20 白露~ 阅读(1328) 评论(0) 推荐(0) 编辑

摘要:1、初步认识: 策略模式的定义: 定义一组算法,将每个算法都封装起来,使得它们之间可以相互替换。策略模式让算法独立于调用它的客户端而独立变化。 大白话: 我清楚知道自己身上有几把武器(策略),我会根据不同的情况使用不同的武器(根据情况,切换策略)。 游戏中我分别捡到三把枪: 1、R1895消音左轮一 阅读全文
posted @ 2019-04-23 22:02 白露~ 阅读(518) 评论(0) 推荐(0) 编辑

摘要:1、初步认识 观察者模式的定义: 在对象之间定义了一对多的依赖,这样一来,当一个对象改变状态,依赖它的对象会收到通知并自动更新。 大白话: 其实就是发布订阅模式,发布者发布信息,订阅者获取信息,订阅了就能收到信息,没订阅就收不到信息。 2、这个模式的结构图 3、可以看到,该模式包含四个角色 抽象被观 阅读全文
posted @ 2019-04-23 21:56 白露~ 阅读(419) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示