当前位置: 首页 > news >正文

网页设计欣赏案例我们做的网站是优化型结构

网页设计欣赏案例,我们做的网站是优化型结构,定制网站和模板建站哪个好用,千万不要学建筑设计Unity实现设计模式——状态模式 状态模式最核心的设计思路就是将对象的状态抽象出一个接口,然后根据它的不同状态封装其行为,这样就可以实现状态和行为的绑定,最终实现对象和状态的有效解耦。 在实际开发中一般用到FSM有限状态机的实现&…

Unity实现设计模式——状态模式

状态模式最核心的设计思路就是将对象的状态抽象出一个接口,然后根据它的不同状态封装其行为,这样就可以实现状态和行为的绑定,最终实现对象和状态的有效解耦。

在实际开发中一般用到FSM有限状态机的实现,GF框架中的FSM和流程控制就是基于这个原理实现的。
在这里插入图片描述

1.State(状态的抽象基类)

    public abstract class State{protected Context m_Context = null;public State(Context theContext){m_Context = theContext;}public abstract void Handle(int Value);}

2.ConcreteStateA,ConcreteStateB,ConcreteStateC

状态State的子类

    /// <summary>/// 状态A/// </summary>public class ConcreteStateA : State{public ConcreteStateA(Context theContext) : base(theContext){ }public override void Handle(int Value){Debug.Log("ConcreteStateA.Handle");if (Value > 10)m_Context.SetState(new ConcreteStateB(m_Context));}}/// <summary>/// 状态B/// </summary>public class ConcreteStateB : State{public ConcreteStateB(Context theContext) : base(theContext){ }public override void Handle(int Value){Debug.Log("ConcreteStateB.Handle");if (Value > 20)m_Context.SetState(new ConcreteStateC(m_Context));}}/// <summary>/// 状态C/// </summary>public class ConcreteStateC : State{public ConcreteStateC(Context theContext) : base(theContext){ }public override void Handle(int Value){Debug.Log("ConcreteStateC.Handle");if (Value > 30)m_Context.SetState(new ConcreteStateA(m_Context));}}

3.Context

Context类-持有目前的状态,并将相关信息传给状态

    public class Context{State m_State = null;public void Request(int Value){m_State.Handle(Value);}public void SetState(State theState){Debug.Log("Context.SetState:" + theState);m_State = theState;}}

4.测试代码

    public class StatePatternExample5 : MonoBehaviour{void Start(){UnitTest();}void UnitTest(){Context theContext = new Context();theContext.SetState(new ConcreteStateA(theContext));theContext.Request(5);theContext.Request(15);theContext.Request(25);theContext.Request(35);}}
http://www.sczhlp.com/news/99645/

相关文章:

  • 网站建设 中企动力 东莞湖南营销型网站建设 在线磐石网络
  • 心理学网站可以在线做量表给新公司建网站
  • 网站优秀设计方案郴州市网站建设
  • 精通网站建设私人订制app软件
  • 合肥响应式网站设计南庄做网站
  • 网站建设公司业务培训祖庙网站建设公司
  • 江西省城乡建设网站网站关键词设置多少合适
  • 厦门专业做网站的天津网站建设网站排名优化
  • 怎么不花钱做公司网站seo整站优化多少钱
  • 什么行业需要找网络公司做网站咸阳个人兼职网站建设
  • 一站式企业建站制作苏州网站设计公司哪家便宜
  • 优秀网站设计书籍网站建设属于税收
  • 做venn的网站wordpress建站课程
  • 企业网站优化设计的含义怎样创造一个网站
  • 网站建设有什么注意网站建设需要多少个人
  • 网站建设熊掌号里属于什么领域如何做跨境购物网站
  • 曲靖网站制作一条龙郑州网站建设公司代运营
  • 湛江做网站哪家专业网站管理维护怎么做
  • 做一个网站的价格app开发哪个公司好
  • 字符串算法笔记
  • 北京网站案例商务网站建设评估的指标
  • 中国建设银行网站类型分析wordpress 域名 去掉
  • 山西建设厅网站上海市建设工程 安全协会网站
  • 途牛企业网站建设express 网站开发
  • 网站代码加密了怎么做张家界网站建设的公司
  • 霍山有没有做建网站的安阳网站建设优化渠道
  • 做地方黄页网站网站出现弹窗
  • 在哪个网站做图片视频带音乐做一款网页游戏需要多少钱
  • 广州智能建站网页图片下载插件
  • 网站后台网址在哪输入赣州网站制作找哪家好