![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 54
帅_shuai_
用自己的努力去收获自己的未来
展开
-
Unity实现设计模式——适配器模式
适配器模式又称为变压器模式、包装模式(Wrapper) 将一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。在一个在役的项目期望在原有接口的基础上拓展,那么适配器模式是最适合的。即需要使用一个已有或新建的类,但这个类又不符合系统的接口,则可以使用适配器模式。client:需要使用适配器的对象,不需要关心适配器内部的实现,只对接目标角色。Target:目标角色,和client直接对接,定义了client需要用到的功能。原创 2023-10-09 09:49:12 · 488 阅读 · 0 评论 -
Unity实现设计模式——访问者模式
访问者模式(Vistor Pattern)是一种将数据结构和数据操作分离的设计模式。是指封装一些作用于某种数据结构中的各种元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新操作。访问者模式的基本思想是针对系统中拥有的某些固定类型的对象结构(元素),在其内部提供一个accept()方法用来接受访问者对象的访问。不同的访问者对同一元素的访问内容不同,所以使得相同的元素可以产生不同的元素结果。就是说不同的访问者访问同一个对象里面的不同属性,产生了不同的结果。原创 2023-10-08 15:51:52 · 501 阅读 · 0 评论 -
Unity实现设计模式——模板方法模式
模板模式(Template Pattern), 指在一个抽象类公开定义了执行它的方法的模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。简单说, 模板方法模式定义一个操作中的算法的骨架,而将这些步骤延迟到子类中,使得子类可以不改变一个算法的结构,就可以重定义该算法的某些特定步骤。原创 2023-10-08 15:23:51 · 462 阅读 · 0 评论 -
Unity实现设计模式——策略模式
策略模式是一种定义一些列算法的方法,这些所有的算法都是完成相同的工作,只是实现不同。它可以通过相同的方式调用所有的算法,减少各种算法类与使用算法类之间的耦合。策略模式的 Strategy 类层次为 Context 定义了一系列的可供重用的算法或行为。继承有助于析取出这些算法中的公共功能。策略模式就是用来封装算法的,但在实践中,我们发现可以用它来封装几乎任何类型的规则,只要在分析过程中听到需要在不同时间应用不同的业务规则,就可以考虑使用策略模式处理这种变化的可能性。需要注意的是策略模式与工厂模式的区别简单工原创 2023-10-08 14:55:24 · 309 阅读 · 0 评论 -
Unity实现设计模式——备忘录模式
它可以在不破坏封装性的前提下捕获一个对象的内部状态,并在对象之外保存这个状态,以便在需要的时候恢复到原先保存的状态。源发器(Originator):需要保存和恢复状态的对象。它创建一个备忘录对象,用于存储当前对象的状态,也可以使用备忘录对象恢复自身的状态。备忘录(Memento):存储源发器对象的状态。备忘录对象可以包括一个或多个状态属性,源发器可以根据需要保存和恢复状态。管理者(Caretaker):负责保存备忘录对象,但不能修改备忘录对象的内容。原创 2023-10-08 14:29:47 · 425 阅读 · 0 评论 -
Unity实现设计模式——迭代器模式
迭代器模式是一种行为型设计模式,它提供了一种统一的方式来访问集合对象中的元素,而不是暴露集合内部的表示方式。简单地说,就是将遍历集合的责任封装到一个单独的对象中,我们可以按照特定的方式访问集合中的元素。抽象迭代器(Iterator):定义了遍历聚合对象所需的方法,包括hashNext()和next()方法等,用于遍历聚合对象中的元素。具体迭代器(Concrete Iterator):它是实现迭代器接口的具体实现类,负责具体的遍历逻辑。它保存了当前遍历的位置信息,并可以根据需要向前或向后遍历集合元素。原创 2023-10-07 19:30:36 · 378 阅读 · 0 评论 -
Unity实现设计模式——解释器模式
解释器模式(Interpreter Pattern)是一种按照规定语法进行解析的模式,现实项目中用得较少。给定一门语言,定义它的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中的句子。下面用一个例子演示:将罗马文字转换为十进制的格式。原创 2023-09-29 10:40:53 · 614 阅读 · 0 评论 -
Unity实现设计模式——中介者模式
聊天大厅的抽象基类聊天的参与者基类。原创 2023-09-29 09:32:13 · 526 阅读 · 0 评论 -
Unity实现设计模式——责任链模式
责任链模式定义:将请求的发送和接收解耦,让多个接收对象都有机会处理这个请求。将这些接收对象串成一条链,并沿着这条链传递这个请求,直到链上的某个接收对象能够处理它为止。在职责链模式中,多个处理器(也就是刚刚定义中说的“接收对象”)依次处理同一个请求。一个请求先经过A处理器处理,然后再把请求传递给B处理器,B处理器处理完后再传递给C处理器,以此类推,形成一个链条。链条上的每个处理器各自承担各自的处理职责,所以叫作职责链模式。这里使用管理者、副总裁、总裁、依次采购商品的例子。原创 2023-09-28 16:33:16 · 1377 阅读 · 0 评论 -
Unity实现设计模式——观察者模式
观察者模式原创 2023-09-27 09:53:39 · 415 阅读 · 0 评论 -
Unity实现设计模式——状态模式
状态模式最核心的设计思路就是将对象的状态抽象出一个接口,然后根据它的不同状态封装其行为,这样就可以实现状态和行为的绑定,最终实现对象和状态的有效解耦。在实际开发中一般用到FSM有限状态机的实现,GF框架中的FSM和流程控制就是基于这个原理实现的。原创 2023-09-27 09:29:56 · 1630 阅读 · 0 评论 -
Unity实现设计模式——命令模式
命令模式使得请求的发送者与请求的执行者之间消除耦合,让对象之间的调用关系更加灵活。在命令模式中,会将一个命令封装成一个对象,同时命令模式也支持可撤销的操作。命令里面通常聚合接收者,初始化命令时传入接收者,调用者直接调用命令即可。原创 2023-09-26 10:42:14 · 438 阅读 · 0 评论