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

网站开发设备费用计入什么科目网站申请流程

网站开发设备费用计入什么科目,网站申请流程,wordpress 归档页,wordpress去除注册外观模式是一种结构型设计模式,为复杂子系统提供​​统一的高层接口​​,通过定义一个外观类来​​简化客户端与子系统的交互​​,降低系统耦合度。这种模式隐藏了子系统的复杂性,将客户端与子系统的实现细节隔离开来,…

外观模式是一种结构型设计模式,为复杂子系统提供​​统一的高层接口​​,通过定义一个外观类来​​简化客户端与子系统的交互​​,降低系统耦合度。这种模式隐藏了子系统的复杂性,将客户端与子系统的实现细节隔离开来,让客户端只需与外观类交互即可完成复杂的操作。

优点:

1.简化接口:客户端只需与外观类交互,无需了解子系统的复杂接口和实现细节,降低了客户端的使用难度。
2.降低耦合度:将客户端与子系统隔离开来,使得子系统的变化不会影响到客户端,提高了系统的可维护性和可扩展性。
3.提高灵活性:可以根据需要添加或修改外观类的方法,而不会影响到子系统的实现。

缺点:

1.不符合开闭原则:如果需要添加新的子系统功能,可能需要修改外观类的代码,这违反了开闭原则。
优化:提供扩展方法或钩子方法。

2.外观类可能过于庞大:当子系统的功能越来越多,外观类的方法也会越来越多,导致外观类变得庞大和复杂。
优化:分拆为多个子外观类。

// 基础层
class CoreFacade {protected DatabaseService _db = new DatabaseService();protected CacheService _cache = new CacheService();
}// 扩展层(继承复用)
class BusinessFacade : CoreFacade {private AnalyticsService _analytics = new AnalyticsService();public void ProcessOrder(Order order) {_cache.Store(order);_db.Save(order);_analytics.Track(order);}
}

说明例子:

1.UML类图

2.实现

1.定义一个外观类:

    public class AppFacadePattern{private GameEventSys m_gameEventSys = null;private CampSys m_campSys = null; public void Initinal(){m_gameEventSys = new GameEventSys();m_campSys = new CampSys();}public void Update(){m_gameEventSys.Update();m_campSys.Update();}}

2.定义一个基础系统类以及两个实际系统类:

    public class BaseSys{public virtual void Update(){}}public class GameEventSys : BaseSys{public override void Update(){Debug.Log("GameEventSys Update");}}public class CampSys : BaseSys{public override void Update(){Debug.Log("CampSys Update");}}

3.测试类:

public class AppFacade : MonoBehaviour
{AppFacadePattern appFacade = null;void Start(){appFacade = new AppFacadePattern();appFacade.Initinal();}void Update(){appFacade?.Update();   }
}

游戏中的使用场景:

1.游戏资源加载与管理:游戏里需要加载各种各样的资源(像图片、音频、模型等),可能涉及不同的加载器、缓存机制等。
2.游戏输入管理:游戏中的输入方式多种多样,比如键盘、鼠标、手柄等,不同的输入设备有不同的处理逻辑,而且还可能存在不同的输入模式(如菜单模式、游戏模式等)。
3.游戏特效管理:游戏中常常会有各种特效,如粒子特效、光影特效、音效特效等。每种特效都有其独特的创建、播放和销毁逻辑。
4.游戏网络通信管理:游戏中的网络通信涉及多个方面,例如连接服务器、发送和接收数据、处理网络错误等。这些操作可能较为复杂,并且不同的网络协议和服务器有不同的实现方式。
5.新手引导系统:​引导流程需要控制UI提示、镜头移动、操作锁定等多个模块。
6.存档/读档系统​:玩家数据保存涉及角色状态、任务进度、地图探索等多个子系统。
7.场景加载管理器​:场景加载涉及资源加载、光照烘焙、物理系统初始化等多个子系统。
8.战斗系统封装​:角色攻击需要协调动画、伤害计算、特效、音效等多个模块​​​​​​​。
9.动态难度调整​:难度平衡涉及敌人属性、掉落率、AI行为等多个参数。

总结:

通过合理应用外观模式,可以显著提升 C# 项目的可维护性和架构清晰度,特别是在处理复杂系统集成第三方库封装或跨团队协作场景中效果显著。

参考书籍:

《Hands-On Game Development Patterns with Unity 2019》

《设计模式与游戏完美开发》

http://www.dtcms.com/wzjs/418351.html

相关文章:

  • 只买域名怎么做网站网络营销方案策划
  • 怎么看网站做没做seo中国最大的企业培训公司
  • 网站后台管理 源码怎样免费建立自己的网站
  • 用自己的电脑做网站空间淘宝怎么优化关键词排名
  • 好公司网站建设seo排名推广工具
  • 黄骅市海边惠州seo代理商
  • 建设部网站燃气管理部门云南seo公司
  • 网站建设 发展方向优化大师官方免费
  • 商城网站开发方案百度seo关键词优化电话
  • 大眼睛网站建设百度快照优化公司
  • 信息港发布信息拼多多标题关键词优化方法
  • 装饰设计网站模板怎么优化网站排名才能起来
  • python在线编程网址杭州seo中心
  • 购物网站后台怎么做网站托管
  • 湖南省专业建设公司网站的机构全国疫情防控最新数据
  • 网站设计制作要多少钱简述如何优化网站的方法
  • 八桂云网站建设百度口碑官网
  • 软件二次开发怎么弄seo运营做什么
  • 南宁网站开发外包报价企业推广网
  • 合肥网站制作模板推荐朝阳区seo搜索引擎优化怎么样
  • 上海市建设党工委网站江苏seo排名
  • 政府门户网站的建设管理2024年新冠疫情最新消息
  • 廊坊网站建设电话怎样在百度上免费建网站
  • 做网站配置服务器seo石家庄
  • 上海做网站要多少钱企业如何进行品牌推广
  • 个人可以做聊天网站备案吗淘宝搜索关键词查询工具
  • 做任务赚钱的网站代码域名购买哪个网站好
  • 网站开发简述seo工作流程图
  • 招聘网站推广怎么做我的百度账号登录
  • ph域名网站平台推广引流