随笔分类 -  设计模式

摘要:定义: 定义一个可以产生对象的接口,但是让子类决定要产生哪一个类的对象。工厂 方法模式让类的实例化程序延迟到子类中实现。 工厂方法模式就是将类的“产生对象的流程”集合管理的模式。集合管理带来的 好处使:能够针对对象产生的流程制定规则;减少客户端参与对象生成的过程, 尤其是对于那种类对象生产过程过于复 阅读全文
posted @ 2018-01-10 21:37 Recho 阅读(307) 评论(0) 推荐(0)
摘要:运用状态模式和桥接模式实现角色的AI,使控制和状态能够分别独立变化, 这里状态的切换由两种思路: 1.放在Controller中进行切换 2.放在各个状态状态之中进行切换,只不过是调用Controller的ChangeState方法 UML类图: 阅读全文
posted @ 2018-01-09 18:24 Recho 阅读(273) 评论(0) 推荐(0)
摘要:定义: 在一个操作方法中定义算法的流程,其中这些步骤由子类完成。模板方法模式让子类 在不变更原有算法流程的情况下,能够重新定义其中的步骤。 上述的定义中包含两个方面: 定义一个算法的流程,即是很明确地定义算法的每一步骤,并写在父类的方法中 ,而每一个步骤都可以是一个方法的调用。 某些步骤由子类完成, 阅读全文
posted @ 2018-01-09 17:37 Recho 阅读(301) 评论(0) 推荐(0)
摘要:定义 将抽象与实现分离,使二者可以独立变地变化 另一种解释:只依赖接口不依赖实现,定义一个接口类,然后实现的部分在子类中完成,适用于两个群组独立变化的情况 两个角色和三种武器,每个角色都可以使用这三种武器,但是每个角色属性是不同的,使用相同武器所带来的伤害和效果都不一样 问题,当新增一个角色或者一种 阅读全文
posted @ 2018-01-08 21:06 Recho 阅读(188) 评论(0) 推荐(0)
摘要:定义 定义一个接口用来封装一群对象的互动行为,中介者通过移除对象之间的引用,来减少他们之间的耦合,并且能改变他们之间的互动独立性。 整合系统功能,减少系统内部的耦合度。与Facade又相似之处,只不过Facade是对外作为对客户端的操作界面时候使用,而Mediator类让 其对内也成为游戏系统内部之 阅读全文
posted @ 2018-01-08 20:23 Recho 阅读(194) 评论(0) 推荐(0)
摘要:外观模式的定义 外观模式在GOF中的解释:为子系统定义一组统一的接口,这个高级的接口会让子系统更容易被使用 BattleScene类调用GameSystemFacade的方法,与直接在BattleScene类中写相比,可以将BattleScene单一化,让该类只负责游戏在战斗状态下的 功能执行,和状 阅读全文
posted @ 2018-01-08 18:06 Recho 阅读(482) 评论(0) 推荐(0)
摘要:相识 这要追溯到大二的时候,刚开始接触设计模式的时候,记得当时不知从谁哪里听说设计模式这个玩意,对我来说这是一个既陌生而又富有神秘感的词汇。 于是,在某天跑到学校的图书馆找寻相关的书籍,在网上百度了一下,听说《大话设计模式》这本书不错,于是乎便拿过来一看究竟,当时也看的也不知所云, 毕竟只是看,没有 阅读全文
posted @ 2018-01-07 18:54 Recho 阅读(196) 评论(0) 推荐(0)
摘要:单例模式的定义 单例模式的GOF的定义:确认类只有一个对象,并提供一个全局的方法来获取这个对象 单例在实现的时候需要程序设计语言的支持,只要是具有静态类属性,静态类方法和重新定义类建造者存取层级。单例不建议大量使用 ,运用单例需要注意。 单例使用的注意事项 游戏系统中那些类适合单例模式去实现,必须经 阅读全文
posted @ 2018-01-07 11:35 Recho 阅读(231) 评论(0) 推荐(0)
摘要:状态模式的定义 状态模式,在GOF中的解释是:让一个对象的行为随着内部状态的改变而改变,而该对象也像换了类一样 普通状态模式的UML图 使用状态模式实现游戏场景的切换 在Unity3D的环境中,一次运行只能在一个场景中运行,一个场景负责一个不同的功能,而状态模式每次同样也只能存在一个在运行的状态,所 阅读全文
posted @ 2018-01-05 17:16 Recho 阅读(664) 评论(0) 推荐(0)
摘要:设计模式练习:简单工厂模式 抽象基类(也可以用接口等实现):运算的基类 派生类:加减乘除运算 1.加法 2.减法 3.乘法 4.除法 5.等等。。。。 工厂类: 主程序调用: 阅读全文
posted @ 2017-02-20 20:44 Recho 阅读(1811) 评论(0) 推荐(0)