设计模式

学习随笔(设计模式:状态模式)

内容 今天学习了设计模式中的状态模式。 1.状态模式,当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。 收获 1.如果软件中需要用很多枚举表示不同的状态,那么就可以采用状态模式,可以让代码变得更简单,新增状态时扩展性也会更好。 2.先抽象出所有状态的 基类 3.根据基类派生出 ......
模式 设计模式 随笔 状态

设计模式(十四)命令

一、定义 将一个请求封装为一个对象,从而可以用不同的请求对客户进行参数化,对请求排队或者记录请求日志,以及支持可撤销的操作。命令模式是一种对象行为型模式,其别名为动作(Action)模式或事物(Transaction)模式。 二、描述 命令模式的本质是对请求进行封装,一个请求对应一个命令,将发出命令 ......
设计模式 命令 模式

设计模式 十九实验

软件设计 石家庄铁道大学信息学院 实验19:中介者模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解中介者模式的动机,掌握该模式的结构; 2、能够利用中介者模式解决实际问题。 [实验任务一]:虚拟聊天室 在“虚拟聊天室”实例中增加一个新的具体聊天室类和一个新的具体会员类,要求如 ......
设计模式 模式

软件设计模式学习每日总结-第十一天

第十一天 外观模式:外部与子系统通信通过一个统一的外观对象,为子系统的一组接口提供一个统一的入口。 ......
设计模式 模式 软件

学习随笔(设计模式:抽象工厂模式)

内容 今天学习了抽象工厂模式。 1.抽象工厂模式提供一个创建一系列相关或相互依赖对象的接口,而无需指定他们具体的类。 2.听起来有一些复杂,主要实现的功能就是在尽可能保证开放-封闭的原则下兼容具体的抽象动作。 3.最终可以采用 配置文件 + 反射 + 抽象工厂 来实现对抽象产品的设计,保证代码的开放 ......
模式 设计模式 随笔 工厂

Java——设计模式

一、概述 设计模式是历代程序员总结出的经验 二、分类 创建型模式:简单工厂模式 工厂方法模式 单例模式:饿汉式(开发) 懒汉式(面试) 行为型模式 结构型模式 三、简单工厂模式 一个工厂中可以创建很多各种各样的对象 缺陷:如果有新的对象的时候,需要修改很多类。一般情况下,工厂类是不轻易修改的 四、工 ......
设计模式 模式 Java

设计模式学习每日总结-第十天

第十天 装饰模式:动态地给一个对象增加额外职责。 有点:更灵活地增加子类 缺点:小子类多,占资源 ......
设计模式 模式

设计模式

设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 一、设计模式的分类 总体设计模式分为三大类: 创建型模式,共5种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型 ......
设计模式 模式

学习随笔(设计模式:观察者模式)

内容 今天学习了观察者模式。 1.观察者模式又叫发布-订阅模式。 2.观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生改变时,会通知所有观察者对象,使他们能够自动更新自己。 3.观察者模式所做的工作其实就是在接触耦合。让耦合的双方都依赖于抽象,而不 ......
模式 观察者 设计模式 随笔

软件设计模式学习每日总结-第九天

第九天 组合模式:组合多个对象形成树形结构,使得叶子和容器的使用具有一致性。 透明组合模式:声明了对象的所有的方法。 安全组合模式:不声明对象的方法。 ......
设计模式 九天 模式 软件

设计模式—结构型模式之享元模式

设计模式—结构型模式之享元模式 享元模式(Flyweight Pattern),运用共享技术有效地支持大量细粒度对象的复用。系统只使用少量的对象,而这些对象都很相似,状态变化很小,可以实现对象的多次复用。对象结构型。 在享元模式中可以共享的相同内容称为内部状态(IntrinsicState),而那些 ......
模式 结构型 设计模式 结构

JavaSE面试题02:单例设计模式

通俗解释:单例模式 > 单:唯一 > > 例:实例 > > 单例设计模式,即某个类在整个系统中只能有一个实例对象可被获取和使用的代码模式 > > 例如:代表JVM运行环境的Runtime类 ......
设计模式 模式 JavaSE

学习随笔(设计模式:建造者模式)

内容 今天学习了建造者模式。 1.建造者模式是将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 2.简单来说就是一个类的所有的特性方法与这个类对象的构建分离 3.本来觉得有点类似于工厂模式,但细想又不太一样。工厂模式是创建一个类,这个类用来创新用户所关注的类对象,类的构建也 ......
模式 设计模式 随笔

设计模式-享元模式

参考:https://blog.csdn.net/shuai_h/article/details/129701459 概述 -运用共享技术来有效地支持大量细粒度对象的复用。它通过共享已经存在的对象来大幅度减少需要创建的对象数量、避免大量相似对象的开销,从而提高系统资源的利用率。 优缺点 优点 极大减 ......
模式 设计模式

学习随笔(设计模式:外观模式)

内容 今天学习了外观模式。 1.外观模式,为子系统中的一组接口提供了一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 2.起始很多现在的软件思路都是遵从于外观模式,它完美的依赖倒转原则和迪米特法则的思想。 3.软件编程采用三层架构,数据访问层、业务逻辑层,并将各个层之间 ......
模式 设计模式 随笔 外观

Java设计模式之命令模式

命令模式(Command Pattern)是一种行为型设计模式,又叫动作模式或事务模式。它将请求(命令)封装成对象,使得可以用不同的请求对客户端进行参数化,具体的请求可以在运行时更改、排队或记录,它讲发出者和接收者解耦(顺序:发出者-->命令-->接收者)本质:封装请求 抽象命令(Command): ......
模式 设计模式 命令 Java

Java设计模式之迭代器模式

迭代器模式是一种行为型设计模式,它提供了一种统一的方式来访问集合对象中的元素,而不是暴露集合内部的表示方式。简单地说,就是将遍历集合的责任封装到一个单独的对象中,我们可以按照特定的方式访问集合中的元素。 抽象迭代器(Iterator):定义了遍历聚合对象所需的方法,包括hashNext()和next ......
模式 设计模式 Java

rust程序设计(6)枚举与模式匹配

rust中的枚举有什么用?枚举可以嵌入类型的好处是什么 你可以在同一个枚举中既有单个值,也有元组或结构体。 枚举的每个变体可以拥有不同数量和类型的关联数据。 这增加了类型的灵活性和表达力,使你能够更精确地建模你的数据。 我知道rust可以为枚举创建方法,那在哪种场景下枚举会比结构体会有优势 表示多个 ......
程序设计 模式 程序 rust

软件设计模式学习每日总结-第七天

第七天学习 结构型模式:描述如何将对象或类组合成更大的结构。 类结构型模式:类的组合 对象结构模式:类与对象的组合 适配器模式:使接口不兼容的类可以一起工作。 ......
设计模式 模式 软件

软件设计模式学习每日总结-第六天

第六天 单例模式:一个类只有一个实例,并且自行实例化向全局提供这个实例。 ......
设计模式 模式 软件

学习随笔(设计模式:迪米特法则)

内容 今天学习了设计模式中的迪米特法则,如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。 收获 1.这个在软件编程中的应用还是挺多的。比如一系列对象需要进行管理,不要单独操作对象本身,而是设计一个管理者, ......
设计模式 法则 随笔 模式

软件设计实验14:代理模式

实验14:代理模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解代理模式的动机,掌握该模式的结构; 2、能够利用代理模式解决实际问题。 [实验任务一]:婚介所 婚介所其实就是找对象的一个代理,请仿照我们的课堂例子“论坛权限控制代理”完成这个实际问题,其中如果年纪小于18周岁,婚 ......
模式 软件

软件设计实验12:外观模式

实验12:外观模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解外观模式的动机,掌握该模式的结构; 2、能够利用外观模式解决实际问题。 [实验任务一]:计算机开启 在计算机主机(Mainframe)中,只需要按下主机的开机按钮(on()),即可调用其他硬件设备和软件的启动方法 ......
外观 模式 软件

软件设计实验13:享元模式

实验13:享元模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解享元模式的动机,掌握该模式的结构; 2、能够利用享元模式解决实际问题。 [实验任务一]:围棋 设计一个围棋软件,在系统中只存在一个白棋对象和一个黑棋对象,但是它们可以在棋盘的不同位置显示多次。 实验要求: 1. 提 ......
模式 软件

软件设计实验15:职责链模式

实验15:职责链模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解职责链模式的动机,掌握该模式的结构; 2、能够利用职责链模式解决实际问题。 [实验任务一]:财务审批 某物资管理系统中物资采购需要分级审批,主任可以审批1万元及以下的采购单,部门经理可以审批5万元及以下的采购单, ......
职责 模式 软件

学习随笔(设计模式:模板方法模式)

内容 今天学习了模板方法模式,模板是一种面向对象高级语言中常用的编程思想。 收获 1.模板方法模式:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 2.模板编程能大大提高代码的复用性,可以在寻找所有对象公共的方法,然后抽 ......
模式 设计模式 随笔 模板 方法

学习随笔(设计模式:原型模式)

内容 今天学习了设计模式中的原型模式。 收获 1.所谓的原型模式,就是省去了一个类对象构造及初始化的过程,通过在原有的类对象中设计一个clone的方法或者接口,来拷贝出一个新的类对象。 2.拷贝的时候要注意"深复制"和"浅复制"的问题。这个是老生常谈的话题。 感悟 1.原型模式主要是用在构建类对象比 ......
模式 设计模式 原型 随笔

软件设计模式学习每日总结-第五天

第五天学习 原型模式:复制创建新 浅克隆:复制对象. 深克隆:复制对象及其成员。 ......
设计模式 模式 软件

设计模式(十三)职责链

一、定义 避免将一个请求的发送者与接受者耦合在一起,让多个对象都有机会接受请求。将接收请求的对象连接成一条链,并且沿着这条链传递请求,直到有一个对象能够处理它为止。职责链模式是一种行为型模式 二、描述 职责链可以是一条直线、一个环或者一个树形结构,最常见的职责链是直线型,即沿着一条单向的链来传递请求 ......
设计模式 职责 模式

设计模式—结构型模式之外观模式(门面模式)

设计模式—结构型模式之外观模式(门面模式) 外观(Facade)模式又叫作门面模式,是一种通过为多个复杂的子系统提供一个一致的接口,而使这些子系统更加容易被访问的模式。 例子 我们的电脑会有很多 组件,比如CPU、硬盘、内存等等;如果我们电脑需要启动的话,需要挨个去调用每个组件的启动方法;停止逻辑也 ......
模式 结构型 设计模式 门面 外观
共2000篇  :6/67页 首页上一页6下一页尾页