
设计模式
Sun.ME
这个作者很懒,什么都没留下…
展开
-
观察者模式在游戏开发中的应用
观察者模式其定义了对象之间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖它的对象都会得到通知,并响应对应的行为。需求描述:场景中有一个小球做自由落体运动,场景中存在三个Cube,这三个Cube会监视这个小球的运动状态,并保持自身的运动状态和小球的运动状态一致;同时,小球的坐标位置也会实时的显示到UI界面中。演示例子:定义被观察者的接口/// <summar...原创 2019-05-07 15:32:18 · 2711 阅读 · 1 评论 -
闲话-依赖倒置原则
依赖倒置原则本质 :高层模块不因该直接依赖于底层模块的实现,而应该依赖于底层模块的抽象。即,模块类之间的依赖是基于抽象类的,实现类之间不能有直接的依赖关系,其依赖关系是通过接口或者抽象类产生的。另外,接口和抽象类不应该依赖于实现类,而实现类应该依赖于接口或者抽象类。也就是我们常说的:面向接口编程。上一节分享了开闭原则,这节我们再着重分析一下依赖倒置原则故事情节: 还是砸金蛋活动,我们有...原创 2019-04-29 11:29:17 · 1140 阅读 · 0 评论 -
趣话-开闭原则
开闭原则在面向对象编程领域中,开闭原则要求软件对象应该对扩展开放,对修改关闭。即,一个实体在不修改其原有代码的基础上,为其增添新的功能或改变其行为。举个例子,现有一个砸金蛋的活动,顾客可以选择工具来砸开金蛋,获得奖励。我们为顾客准备了一把锤子,顾客使用锤子砸开金蛋,获得奖励。首先,不使用设计模式以及开闭原则的方式来为其编码。硬编码定义锤子类,需要敲击三次才能砸开金蛋 /...原创 2019-04-22 11:25:04 · 366 阅读 · 0 评论 -
情话-接口隔离原则
接口隔离原则原创 2019-04-19 13:18:53 · 661 阅读 · 0 评论 -
策略模式在游戏开发中的应用
策略模式在策略模式中,一个类的行为或者其算法可以在运行时更改。这种类型的设计模式属于行为模式。在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象而改变的Contenxt(上下文对象),策略对象改变Context对象的执行算法。意图通过定义一系列的算法,并将其封装为对象,在运行时,可以更具输入条件的不同,动态更换不同的算法。可以很大程度的解决大量使用if…else 语句来描述...原创 2019-03-06 14:31:38 · 8444 阅读 · 1 评论 -
中介者模式在游戏开发中的应用
中介者模式:定义一个接口用来封装一群对象的互动行为。中介者通过移除对象之间引用,来减少它们之间的耦合度,并且能改变它们之间的互动独立性。意图:通过中介者来解决对象之间的通信,使一个对象在不需要知道其它对象的具体信息的情况下通过中介者与之通信,同时通过引用中介者来减少系统对象之间的关系,提高对象的可复用性和可扩展性需求描述创建一个简单的小游戏游戏包含MotionSystem(运动...原创 2019-03-01 17:52:21 · 8424 阅读 · 4 评论 -
状态模式在游戏开发中的应用
状态模式在状态模式中,类的行为是基于它的状态改变的。这种类型的设计模式属于行为模式。我们通过创建一个对象来随着状态的改变而进行不同的行为。意图允许对象在内部状态发生改变时改变它的行为,对象看起来好像修改了它的类。主要用来解决:对象的行为依赖于它的状态,并且可以根据它的状态改变而改变它的行为。需求描述:我们在游戏中控制一个角色,我们需要操作键盘,按下不同的键来改变当前角色的状态...原创 2019-01-18 14:14:07 · 10486 阅读 · 2 评论 -
命令模式在游戏开发中的应用
命令模式的描述:命令模式(Command Pattern)是一种数据驱动的设计模式,它属于行为型模式。请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令。意图: 将一个请求封装成一个对象,从而使您可以用不同的请求对客户进行参数化。需求描述:给定两种不同的工具:锤子、刷子;锤子可以用来砸开泥土表层,刷子可...原创 2019-01-17 18:39:41 · 10346 阅读 · 1 评论 -
原型模式 C#
原型模式 C#原创 2017-12-05 20:18:43 · 441 阅读 · 0 评论 -
代理模式
(Git地址:https://github.com/USuperMe/ProxyModel.git) 今天分享设计模式中的代理模式,我觉得就是月老担任的职责。不过貌似今天是个特殊的日子,没办法,刚好学到这一章,作为一个20余年的老汪,我觉得没必要出去瞎转悠,老老实实的 码码码...............什么是代理模式:呐,百度百科是这么解释的:代理模式由三个部原创 2017-11-11 18:31:32 · 284 阅读 · 0 评论 -
策略模式 C#版
(先放git地址:https://github.com/USuperMe/StrategyModel) 上一篇分享了简单工厂模式,看图回顾一下其原理:补充一下简单工厂模式的优缺点:优点:1实现了创建和使用的分离2.客户端无需知道实际创建的类,只需要和工厂类打交道就可以缺点:工厂类(Factory)职责原创 2017-10-29 17:37:38 · 517 阅读 · 0 评论 -
C#实现简单工厂模式
c#实现简单工厂模式 Unity原创 2017-10-21 11:29:55 · 2896 阅读 · 1 评论