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

做某网站的设计与实现深圳做外贸网站公司

做某网站的设计与实现,深圳做外贸网站公司,直播网站开发框架,成都软件开发外包策略模式 前言 先了解一下设计模式的几种类似#xff1a; 行为型设计模式#xff08;Behavioral Design Pattern#xff09;是指一组设计模式#xff0c;它们关注的是对象之间的通信和协作。行为型设计模式描述了对象之间的职责分配和算法的封装#xff0c;以及如何在运…策略模式 前言 先了解一下设计模式的几种类似 行为型设计模式Behavioral Design Pattern是指一组设计模式它们关注的是对象之间的通信和协作。行为型设计模式描述了对象之间的职责分配和算法的封装以及如何在运行时动态改变对象的行为。它们的目的是提高系统的灵活性和可复用性使系统更易于扩展和维护。行为型设计模式通常包括以下几种 模板方法模式Template Method Pattern策略模式Strategy Pattern观察者模式Observer Pattern迭代器模式Iterator Pattern责任链模式Chain of Responsibility Pattern命令模式Command Pattern访问者模式Visitor Pattern备忘录模式Memento Pattern状态模式State Pattern中介者模式Mediator Pattern解释器模式Interpreter Pattern 创建型设计模式主要关注对象的创建过程包括将对象的创建过程抽象化、封装和解耦等。常见的创建型设计模式包括工厂方法模式、抽象工厂模式、单例模式、建造者模式和原型模式。结构型设计模式主要关注对象的组合方式包括对象之间的组合方式、类之间的组合方式等。常见的结构型设计模式包括适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式和代理模式。 策略模式是一种行为型设计模式它定义了一系列算法将每个算法都封装起来并且使它们之间可以互换。策略模式让算法的变化独立于使用算法的客户。 正文 策略模式的优点包括 可以方便地增加新的算法因为每个算法都被封装到了自己的类中新增加一个算法只需要添加一个新的类就可以了。可以方便地切换算法因为算法之间被解耦所以可以方便地切换算法。可以方便地扩展算法因为每个算法都被封装到了自己的类中所以可以方便地扩展算法。可以减少代码重复因为算法之间可以共享代码。可以方便地测试算法因为每个算法都被封装到了自己的类中所以可以方便地测试算法。 总之策略模式可以提高代码的灵活性、可扩展性和可维护性。它的应用范围很广可以用于各种算法的封装和应用。 #include iostream #include vector// 抽象策略类 class Strategy { public:virtual void execute() 0; };// 具体策略类A class ConcreteStrategyA : public Strategy { public:virtual void execute() {std::cout 执行策略A std::endl;} };// 具体策略类B class ConcreteStrategyB : public Strategy { public:virtual void execute() {std::cout 执行策略B std::endl;} };// 上下文类 class Context { public:void setStrategy(Strategy* strategy) {m_strategy strategy;}void executeStrategy() {if (m_strategy ! nullptr) {m_strategy-execute();}}private:Strategy* m_strategy; };int main() {// 创建策略对象ConcreteStrategyA strategyA;ConcreteStrategyB strategyB;// 创建上下文对象Context context;// 执行策略Acontext.setStrategy(strategyA);context.executeStrategy();// 执行策略Bcontext.setStrategy(strategyB);context.executeStrategy();return 0; }在上面的代码中我们定义了一个抽象策略类 Strategy以及两个具体的策略类 ConcreteStrategyA 和 ConcreteStrategyB。这些策略类都实现了 execute 方法用于执行具体的策略。 我们还定义了一个上下文类 Context它包含一个成员变量 m_strategy用于保存当前使用的策略对象。Context 类有两个方法setStrategy 和 executeStrategy分别用于设置当前使用的策略对象和执行策略。 在 main 函数中我们创建了两个具体的策略对象 strategyA 和 strategyB以及一个上下文对象 context。我们首先将上下文对象的策略设置为 strategyA然后调用 executeStrategy 方法执行策略。接着我们将上下文对象的策略设置为 strategyB再次执行策略。 这个示例中策略模式的核心思想就是将具体的算法实现封装到不同的策略类中通过上下文对象来控制使用哪个策略。这样我们就可以在运行时动态地切换不同的策略从而实现灵活的算法组合。
http://www.yingshimen.cn/news/82545/

相关文章:

  • 视频网站为什么有人做1m带宽网站支持多少人同时在线
  • 公司如何建设一个网站特色网站建设
  • 绩效管理网站开发wordpress心情插件
  • 网站建设的基本概念网络营销软件推广
  • 做网站vi系统是什么绍兴建站模板厂家
  • 网站一直做竞价么制作软件的公司叫什么
  • 网站美工和平面设计师之路网站建设
  • 惠州惠城区建设网站wordpress 百度蜘蛛
  • 常州微网站加强图书馆网站建设
  • 长沙企业网站建设品牌番禺龙美村做网站
  • 做网站维护工商经营范围是什么seo短视频网页入口营销
  • 海南注册公司多少钱适合seo优化的站点
  • 搭建什么网站能盈利wordpress手机端显示分类
  • 做网站的经验电脑有固定IP 做网站
  • 安徽城乡建设厅官网站wordpress 文章宽度
  • 受欢迎的昆明网站建设江苏住房和城乡建设厅网站报考
  • 做网站页面多少钱外包seo公司
  • wap网站多少钱国外jquery网站
  • 绍兴网站建设开发亚马逊市场营销案例分析
  • 水果销售网站开发文献综述门户网站盈利模式
  • 网站设计特点wordpress站长地图
  • 路南网站建设专业的深圳网站设计
  • 小白学做网站教程成都seo优化推广
  • 织梦移动网站做百度网站要多少钱
  • 广州推广网站东莞市专注网站建设服务机构
  • 广州天华建筑设计有限公司云南网站优化建站
  • 四川建设厅电子证书官方网站永德网站建设
  • 建设部网站令第77号济南网站建设服务公司
  • 东道设计理念分析seo网站
  • 蚌埠市做网站备案 增加网站