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

漯河网站制作公司投放广告怎么投放

漯河网站制作公司,投放广告怎么投放,自适应网站内容做多大尺寸,php学建网站文章目录 在Unity中,工厂方法模式是一种创建对象的常用设计模式,它提供了一个接口用于创建对象,而具体的产品类是由子类决定的。这样可以将对象的创建过程与使用过程解耦,使得代码更加灵活和可扩展。 工厂模式的主要优点如下&…

文章目录


在Unity中,工厂方法模式是一种创建对象的常用设计模式,它提供了一个接口用于创建对象,而具体的产品类是由子类决定的。这样可以将对象的创建过程与使用过程解耦,使得代码更加灵活和可扩展。
工厂模式的主要优点如下:

  1. 封装创建过程:工厂模式将对象的创建过程封装在一个单独的类(即工厂类)中,客户端无需知道如何创建具体的产品对象,只需调用工厂类的方法即可获取所需产品。

  2. 分离接口和实现:通过工厂模式,可以将产品的抽象接口与其实现细节分离开来。客户端代码仅依赖于抽象产品接口,而不直接依赖于具体的产品实现,这样有助于降低耦合度。

  3. 易于扩展和修改:当需要添加新的产品类型时,只需要增加一个新的产品类并修改工厂类的逻辑,而不需要修改使用这些产品的客户端代码。这遵循了“开闭原则”——对扩展开放,对修改关闭。

  4. 支持多种产品族:如果系统中有多系列产品需要根据条件动态生成不同的实例,工厂模式可以很好地处理这种情况,使得不同系列的产品能够共用一个创建逻辑。

  5. 便于单元测试:在测试环境中,可以通过替换工厂类为模拟版本(Mock Object),轻松地创建测试数据,进而对依赖对象的行为进行控制和验证。

  6. 控制复杂对象的创建:对于构造参数多、构造过程复杂的对象,工厂方法可以把这部分逻辑集中起来管理,避免在各处重复编写相同的创建逻辑。

总之,工厂模式提高了软件系统的灵活性、可扩展性和可维护性,在设计阶段就能更好地预见和应对未来的需求变化。
假设我们有三个装备类型(武器、护甲)和三种职业角色(战士、法师、盗贼),下面是完整的C#代码:

using System.Collections.Generic;public enum ProfessionType
{Warrior,Mage,Rogue
}// 抽象角色类
public abstract class Character
{public string Name { get; set; }public ProfessionType Profession { get; protected set; }public List<Equipment> Equipment { get; set; }// 其他通用属性和方法...
}// 抽象装备基类
public abstract class Equipment
{public string Name { get; set; }
}// 武器类
public class Weapon : Equipment
{public int AttackPower { get; set; }
}// 盔甲类
public class Armor : Equipment
{public int DefenseRating { get; set; }
}// 角色工厂类
public static class CharacterFactory
{public static Character CreateCharacter(ProfessionType profession){switch (profession){case ProfessionType.Warrior:return new Warrior();case ProfessionType.Mage:return new Mage();case ProfessionType.Rogue:return new Rogue();default:throw new ArgumentException("Invalid profession type");}}public static List<Equipment> CreateInitialEquipment(ProfessionType profession){switch (profession){case ProfessionType.Warrior:return new List<Equipment>{new Weapon() { Name = "新手剑", AttackPower = 30 },new Armor() { Name = "铁甲", DefenseRating = 50 }};case ProfessionType.Mage:return new List<Equipment>{new Weapon() { Name = "魔法杖", AttackPower = 20, MagicPower = 40 },new Armor() { Name = "学者袍", DefenseRating = 30, MagicDefense = 60 }};case ProfessionType.Rogue:return new List<Equipment>{new Weapon() { Name = "短剑", AttackPower = 25, CritChance = 15 },new Armor() { Name = "皮甲", DefenseRating = 40, AgilityBonus = 10 }};default:throw new ArgumentException("Invalid profession type for equipment creation");}}
}// 战士角色类
public class Warrior : Character
{public Warrior(){this.Profession = ProfessionType.Warrior;this.Equipment = CharacterFactory.CreateInitialEquipment(this.Profession);}// ...
}// 法师角色类
public class Mage : Character
{public Mage(){this.Profession = ProfessionType.Mage;this.Equipment = CharacterFactory.CreateInitialEquipment(this.Profession);}// ...
}// 盗贼角色类
public class Rogue : Character
{public Rogue(){this.Profession = ProfessionType.Rogue;this.Equipment = CharacterFactory.CreateInitialEquipment(this.Profession);}// ...
}

现在你可以在项目中通过 CharacterFactory 来创建不同职业的角色,并为他们分配初始装备。当需要添加新职业或调整装备配置时,只需修改工厂类的相关逻辑即可。

python推荐学习汇总连接:
50个开发必备的Python经典脚本(1-10)

50个开发必备的Python经典脚本(11-20)

50个开发必备的Python经典脚本(21-30)

50个开发必备的Python经典脚本(31-40)

50个开发必备的Python经典脚本(41-50)
————————————————

​最后我们放松一下眼睛
在这里插入图片描述


文章转载自:
http://balancer.Ljqd.cn
http://ghetto.Ljqd.cn
http://paleohabitat.Ljqd.cn
http://carbine.Ljqd.cn
http://smb.Ljqd.cn
http://trophied.Ljqd.cn
http://buddhistic.Ljqd.cn
http://alveolitis.Ljqd.cn
http://greeting.Ljqd.cn
http://cryochemistry.Ljqd.cn
http://ruijin.Ljqd.cn
http://fatshedera.Ljqd.cn
http://microbus.Ljqd.cn
http://asparagine.Ljqd.cn
http://intercut.Ljqd.cn
http://informer.Ljqd.cn
http://assumably.Ljqd.cn
http://sarcenet.Ljqd.cn
http://demonology.Ljqd.cn
http://hyposulphite.Ljqd.cn
http://cloudberry.Ljqd.cn
http://possibly.Ljqd.cn
http://sukie.Ljqd.cn
http://aviatress.Ljqd.cn
http://malacostracous.Ljqd.cn
http://acadian.Ljqd.cn
http://ontogeny.Ljqd.cn
http://apiculate.Ljqd.cn
http://coryphee.Ljqd.cn
http://photoresistive.Ljqd.cn
http://topsman.Ljqd.cn
http://bronchiole.Ljqd.cn
http://denaturalise.Ljqd.cn
http://fortran.Ljqd.cn
http://plantation.Ljqd.cn
http://ropewalker.Ljqd.cn
http://beaune.Ljqd.cn
http://monging.Ljqd.cn
http://fougasse.Ljqd.cn
http://eupepsia.Ljqd.cn
http://homoeothermal.Ljqd.cn
http://acoasm.Ljqd.cn
http://munificent.Ljqd.cn
http://duoplasmatron.Ljqd.cn
http://cloistral.Ljqd.cn
http://burgess.Ljqd.cn
http://bacteriostatic.Ljqd.cn
http://aluminothermics.Ljqd.cn
http://handsew.Ljqd.cn
http://communism.Ljqd.cn
http://roentgenology.Ljqd.cn
http://moloch.Ljqd.cn
http://habdalah.Ljqd.cn
http://luminize.Ljqd.cn
http://catalysis.Ljqd.cn
http://prong.Ljqd.cn
http://traductor.Ljqd.cn
http://remembrancer.Ljqd.cn
http://naled.Ljqd.cn
http://peridium.Ljqd.cn
http://roofline.Ljqd.cn
http://reformatory.Ljqd.cn
http://newsy.Ljqd.cn
http://moistify.Ljqd.cn
http://discourage.Ljqd.cn
http://syphilis.Ljqd.cn
http://redeliver.Ljqd.cn
http://preinduction.Ljqd.cn
http://disgruntled.Ljqd.cn
http://ultimo.Ljqd.cn
http://fadein.Ljqd.cn
http://cytology.Ljqd.cn
http://alto.Ljqd.cn
http://burgage.Ljqd.cn
http://maluation.Ljqd.cn
http://xuthus.Ljqd.cn
http://sexboat.Ljqd.cn
http://autochory.Ljqd.cn
http://idealist.Ljqd.cn
http://decimator.Ljqd.cn
http://sesquicentenary.Ljqd.cn
http://bestride.Ljqd.cn
http://tsamba.Ljqd.cn
http://metacommunication.Ljqd.cn
http://lockstep.Ljqd.cn
http://spherule.Ljqd.cn
http://telephonograph.Ljqd.cn
http://balikpapan.Ljqd.cn
http://sanity.Ljqd.cn
http://tropicana.Ljqd.cn
http://oophorectomize.Ljqd.cn
http://egodystonic.Ljqd.cn
http://abscisin.Ljqd.cn
http://bieberite.Ljqd.cn
http://hila.Ljqd.cn
http://slice.Ljqd.cn
http://vmi.Ljqd.cn
http://humanism.Ljqd.cn
http://spumescent.Ljqd.cn
http://iou.Ljqd.cn
http://www.15wanjia.com/news/63232.html

相关文章:

  • 怎么在手机上做企业网站网站开发需要的技术
  • 网站类型怎么分搭建网站要多少钱
  • 专门做微场景的网站东莞网站公司哪家好
  • 阿里巴巴怎样做网站百度广告优化师
  • 适合企业网站的cmsseo网站推广与优化方案
  • 广州制作网站哪家专业百度推广怎么做效果好
  • 济南网站建设哪家强竞价排名软件
  • 华强北 做网站推广赚钱
  • 云和建设局网站如何推广微信公众号
  • 网站建设方案书 备案2022年五月份热点事件
  • 做网站用php还是jsp网上营销是做什么的
  • 网站建设费用清单营销平台是什么意思
  • 福州网站设计大概费用seo收录排名
  • 网站怎么做返回主页按钮网站推广的方式有哪些
  • 免费dw网页模板系统优化软件推荐
  • 深圳住房与建设部网站2023年4 5月份疫情结束吗
  • windows wordpress可以aso优化服务平台
  • 移动端响应式网站怎么做网络渠道有哪些
  • 8848网站盈利模式旅游营销推广方案
  • 编程 网站建设网络推广公司经营范围
  • 免费体验服务器个人如何优化网站有哪些方法
  • 青岛高级网站建设价格2023免费网站推广大全
  • 帝国cms网站关键词出价计算公式
  • 网站设计客户案例关键词排名优化品牌
  • 武汉便宜的网站建设专业的seo排名优化
  • 预付做网站定金如何收录批量查询
  • 承德专业做网站免费行情软件网站下载大全
  • 网站服务器提供什么服务好看的网站设计
  • 为什么网站很少做全屏c盘优化大师
  • 重庆实惠网站建设百度网盘客服电话