首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
设计模式
帅柱
创建于2023-02-17
订阅专栏
学习设计模式的笔记
暂无订阅
共23篇文章
创建于2023-02-17
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
设计模式——简介
一.背景 作为技术人员,我们在软件开发过程中常常会遇到代码模块的复用及扩展等问题,在复杂系统中解决这类问题的同时,不但会带来很多额外的工作,而且会给产品带来意想不到的风险。因此,在提高代码的复
设计模式——桥梁模式
一.定义 将抽象和实现解耦,使得两者可以独立地变化。 二.类图 Abstraction抽象化角色。主要职责是定义出该角色的行为,同时保存一个对实现化角色的引用,该角色一般是抽象类。 Imple
设计模式——享元模式
一.定义 使用共享对象可有效地支持大量细粒度的对象。 细粒度的对象 共享对象 二.类图 Flyweight抽象享元角色。简单说就是一个产品的抽象类,同时定义出对象的外部状态和内部状态的接口或实
设计模式——解释器模式
一.定义 给定一门语言,定义它文法的一种表示,并定义一个解释器,该解释器使用所定义的文法规则来解释语言中的句子。(别名叫翻译器模式) 二.类图 AbstractExpression抽象解释器。
设计模式——访问者模式
一.定义 封装一些作用于某种数据结构中的各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素新的操作。 二.类图 Visitor抽象访问者。抽象类或者接口,声明访问者可以访问哪些元素
设计模式——状态模式
一.定义 当一个对象内在状态改变时允许其改变行为,这个对象看起来像改变了其类。 状态模式相对来说比较复杂,它提供了一种对物质运动的另一个观察视角。 二.类图 State抽象状态角色。接口或抽象
设计模式——门面模式
一.定义 要求一个子系统的外部与其内部的通信必须通过一个统一的对象进行。门面模式提供一个高层次接口,使得子系统更易于使用。 二.类图 Facade门面角色:客户端可以调用这个角色的方法,此角色
设计模式——备忘录模式
一.定义 在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可将该对象恢复到原先保存的状态。 二.类图 2.1 常规备忘录 Originator发起人角色,
设计模式——观察者模式
一.定义 定义对象间一种一对多的依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并被自动更新。 二.类图 Subject被观察者:定义被观察者必须实现的行为,必须能够动态地
设计模式——组合模式
一. 定义 将对象组合成束状结构以表示“部分-整体”的层次结构,使得用户对单个对象和组合对象的使用具有一致性。 二. 类图 2.1 安全模式 Component抽象构件角色,定义参加组合对象的
设计模式——迭代器模式
一.定义 它提供一种方法访问一个容器对象中各个元素,而又不需要暴露该对象的内部细节。 二.类图 Iterator抽象迭代器:负责定义访问和遍历元素的接口,而且基本有三个固定的方法: first
设计模式——适配器模式
一.定义 将一个类的接口变成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。 二.类图 2.1 类适配器 Target目标角色:其他类的转换目标,一般是
设计模式——装饰模式
一.定义 动态地给一个对象添加一些额外的职责。就增加功能来说,装饰模式相比生成子类更加灵活。 二.类图 Component抽象构件。这是一个接口或者抽象类,就是定义我们最核心、最原始的对象。
设计模式——责任链模式
一.定义 使多个对象都有机会处理请求,从而避免了请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有对象处理它为止。 二.类图 Handler抽象的处理者。
设计模式——命令模式
一.定义 将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能。 二.类图 Receiver接受者角色,命令执行角色。 Co
设计模式——中介者模式
一.定义 用一个对象封装一系列对象的交互,中介者使各对象不需要现实地相互作用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 二.类图 Mediator抽象中介者角色。定义统一的接口,用
设计模式——原型模式
一.定义 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 二.类图 原型模式的核心是一个clone方法,通过该方法进行对象的拷贝。Java提供了一个Cloneable
设计模式——代理模式
一.定义 为其他对象提供一种代理以控制对这个对象的访问。 二.类图 2.1 通用类图 Subject抽象主题角色。可以是抽象类也可以是接口,是一个普通的业务类型定义,无特殊要求。 RealSu
设计模式——建造者模式
一.定义 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 二.类图 Product产品类。通常是实现模板方法模式,也就是由模板方法和基本方法。 Builder抽象建
设计模式——模板模式
一.定义 定义一个操作中的算法的框架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 二.类图 AbstractClass抽象模板。里面的方法分为两
下一页