设计模式
一朵风中摇曳的水仙花
世人多愿锦上添花,却少有人雪中送炭
展开
-
设计模式-单例模式
单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。注意:1、单例类只能有一个实例。2、单例类必须自己创建自己的唯一实例。3、单例类必须给所有其他对象提供这一实例。主要解决:一个全局使用...转载 2020-07-06 09:12:10 · 119 阅读 · 0 评论 -
Apache架构师的30条设计原则!
本文作者叫 Srinath,是一位科学家,软件架构师,也是一名在分布式系统上工作的程序员。他是 Apache Axis2 项目的联合创始人,也是 Apache Software 基金会的成员。他是WSO2流处理器(wso2.com/analytics)的联席架构师。Srinath 撰写了两本关于 MapReduce 和许多技术文章的书。他获得了博士学位。来自美国印第安纳大学。S...转载 2019-08-20 09:23:29 · 105 阅读 · 0 评论 -
状态同步,究竟是推还是拉
任何脱离业务的架构设计都是耍流氓。 状态同步,有好友状态的同步,有群友状态的同步,有的需要实时同步,有的能够容忍延时。结合具体场景来看下,状态同步,究竟是推还是拉。 用户的在线状态,分为客户端状态(端),服务端状态(云)两种形态。 什么是服务端状态?服务端状态,主要分为在线online和离线offline,不同的状态,对于不同的业务处理流程可能不同。例如对于消息的处理:...转载 2019-01-29 09:56:12 · 292 阅读 · 0 评论 -
Java中的设计模式之适配器、模板设计模式
适配器设计模式 适配器在使用监听器的时候, 需要定义一个类事件监听器接口。通常接口中有多个方法, 而程序中不一定所有的都用到, 但又必须重写, 这很繁琐。适配器简化了这些操作, 我们定义监听器时只要继承适配器, 然后重写需要的方法即可。 适配器原理适配器就是一个类, 实现了监听器接口, 所有抽象方法都重写了, 但是方法全是空的。 适配器类需要定义成抽象的,因为创建该...转载 2019-01-26 22:29:08 · 157 阅读 · 0 评论 -
Java设计模式——命令模式
命令模式命令模式很好理解,举个例子,司令员下令让士兵去干件事情,从整个事情的角度来考虑,司令员的作用是,发出口令,口令经过传递,传到了士兵耳朵里,士兵去执行。这个过程好在,三者相互解耦,任何一方都不用去依赖其他人,只需要做好自己的事儿就行,司令员要的是结果,不会去关注到底士兵是怎么实现的。我们看看关系图:Invoker是调用者(司令员),Receiver是被调用者(士兵),MyComm...转载 2019-01-21 15:14:09 · 134 阅读 · 0 评论 -
设计模式之桥接(bridge)模式
在现实生活中,我们常常会用到两种或多种类型的笔,比如毛笔和蜡笔。假设我们需要大、中、小三种类型的画笔来绘制12中不同的颜色,如果我们使用蜡笔,需要准备3*12=36支。但如果使用毛笔的话,只需要提供3种型号的毛笔,外加12个颜料盒即可,涉及的对象个数仅为3+12=15,远远小于36却能实现与36支蜡笔同样的功能。如果需要新增一种画笔,并且同样需要12种颜色,那么蜡笔需要增加12支,而毛笔却只需要新...转载 2019-01-06 18:07:03 · 287 阅读 · 0 评论 -
桥接模式(Bridge模式)详解
在现实生活中,某些类具有两个或多个维度的变化,如图形既可按形状分,又可按颜色分。如何设计类似于 Photoshop 这样的软件,能画不同形状和不同颜色的图形呢?如果用继承方式,m 种形状和 n 种颜色的图形就有 m×n 种,不但对应的子类很多,而且扩展困难。当然,这样的例子还有很多,如不同颜色和字体的文字、不同品牌和功率的汽车、不同性别和职业的男女、支持不同平台和不同文件格式的媒体播放器等。如果...转载 2019-01-06 18:03:24 · 6486 阅读 · 1 评论 -
设计模式之适配器写接口
我们提供一个统一的接口,根据一个参数字段来判断真正执行的是哪个类。上代码。接口规范:package com.smp.orgBatchManageApi.adapter; public interface IAdapter<R,P> { //查询方法 public R search(P params); } 之前的接口封装map:package com...原创 2018-12-03 19:47:25 · 216 阅读 · 0 评论 -
Java设计模式之工厂模式解析(Factory)
工厂模式简介工厂模式的作用是屏蔽创建对象过程中的具体过程,以便提高创建对象过程的灵活性,使使用者不必关心构造对象的细节和复杂的过程。工厂模式一般情况下分为三类:1.简单工厂模式(Simple Factory)2.工厂方法模式(Factory Method)3.抽象工厂模式(Abstract Factory)在工厂模式中一般存在以下三个类型的角色,分别是产品类,工厂类和客户类...转载 2018-11-22 16:03:06 · 272 阅读 · 0 评论 -
常见的几种单例模式
单例模式:是一种常用的软件设计模式,在它的核心结构中值包含一个被称为单例的特殊类。一个类只有一个实例,即一个类只有一个对象实例。 对于系统中的某些类来说,只有一个实例很重要,例如,一个系统中可以存在多个打印任务,但是只能有一个正在工作的任务;售票时,一共有100张票,可有有多个窗口同时售票,但需要保证不要超售(这里的票数余量就是单例,售票涉及到多线程)。如果不是用机制对窗口对象进行唯一化将弹...转载 2018-11-22 11:13:27 · 100 阅读 · 0 评论 -
三种工厂设计模式
设计模式之三种工厂模式简单工厂模式简单工厂模式其实不是一个设计模式,反而比较像一种编程习惯。主要我们定义一个非常简单的类主要负责帮我们生产不同的产品。类图如下:客户端通过简单工厂可以生产出具体产品A,具体产品B,具体产品C。简单工厂: package my.oschina.net.design.factory;public class SimplePizzaFact...转载 2018-08-28 17:21:35 · 239 阅读 · 0 评论