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

软件网页设计师招聘seo谷歌

软件网页设计师招聘,seo谷歌,泊头市有做网站的吗,濮阳网站建设知名公司排名相同点 解耦思想 两者都通过接口/抽象类将实现与调用方解耦,降低模块间的直接依赖。 符合开闭原则 新增策略或产品时,只需扩展新类,无需修改已有代码。 封装变化 策略模式封装算法的变化,工厂模式封装对象创建的变化。 不同…
相同点
  1. 解耦思想

    • 两者都通过接口/抽象类将实现与调用方解耦,降低模块间的直接依赖。

  2. 符合开闭原则

    • 新增策略或产品时,只需扩展新类,无需修改已有代码。

  3. 封装变化

    • 策略模式封装算法的变化,工厂模式封装对象创建的变化


不同点
维度策略模式工厂模式
类型行为型设计模式(关注做什么创建型设计模式(关注如何创建
核心目标动态选择算法/行为统一创建对象,隐藏实例化细节
运行时行为允许在运行时切换策略(如支付方式)通常在创建时确定对象类型(如生成Logger)
客户端依赖客户端直接依赖策略接口客户端依赖工厂类和产品接口
典型场景支付方式、排序算法、数据解析策略数据库连接、日志工具、UI组件生成

代码示例对比

场景:支付系统(策略模式 + 工厂模式结合)

java

复制

// ---------------------- 策略模式部分 ----------------------
interface PaymentStrategy {void pay(double amount);
}class AlipayStrategy implements PaymentStrategy {public void pay(double amount) {System.out.println("支付宝支付: " + amount);}
}class WechatPayStrategy implements PaymentStrategy {public void pay(double amount) {System.out.println("微信支付: " + amount);}
}// ---------------------- 工厂模式部分 ----------------------
class PaymentStrategyFactory {public static PaymentStrategy createStrategy(String type) {switch (type.toLowerCase()) {case "alipay": return new AlipayStrategy();case "wechat": return new WechatPayStrategy();default: throw new IllegalArgumentException("不支持的支付类型");}}
}// ---------------------- 上下文类(策略模式) ----------------------
class PaymentContext {private PaymentStrategy strategy;public PaymentContext(PaymentStrategy strategy) {this.strategy = strategy;}public void executePayment(double amount) {strategy.pay(amount);}
}// ---------------------- 客户端使用 ----------------------
public class Client {public static void main(String[] args) {// 工厂模式创建策略对象PaymentStrategy alipay = PaymentStrategyFactory.createStrategy("alipay");PaymentContext context = new PaymentContext(alipay);// 策略模式动态执行支付context.executePayment(100.0);  // 输出: 支付宝支付: 100.0}
}

关键区别总结

  1. 目的不同

    • 策略模式:解决行为的灵活切换问题(如不同支付逻辑)。

    • 工厂模式:解决对象创建的复杂性问题(如不同支付对象的初始化)。

  2. 交互时机

    • 策略模式:客户端通过上下文类主动切换策略(如 setStrategy())。

    • 工厂模式:客户端通过工厂类被动获取对象(如 createStrategy())。

  3. 适用阶段

    • 策略模式:在对象已存在时,动态改变其行为。

    • 工厂模式:在对象创建时决定其类型。


结合使用场景

在实际开发中,策略模式常与工厂模式结合

  1. 用工厂模式创建策略对象(隐藏创建细节)。

  2. 用策略模式管理策略的切换(动态修改行为)。

例如:电商系统中,通过工厂生成不同的促销策略(满减、折扣),再通过策略模式动态切换。

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

相关文章:

  • 自己做的网站慢是什么原因seo站长综合查询工具
  • 网站建设要注意哪些事情百度app官方正式版
  • 烟台网站建设平台乔拓云智能建站官网
  • 微信团购网站怎么做旅游产品推广有哪些渠道
  • 广州网站建设.com优化服务
  • 山东网站建设自动点击竞价广告软件
  • 不同类型网站优势比较好的免费网站
  • 中国住房和建设部厅查询网站广西南宁市有公司网站设计
  • 微信视频网站怎么做的自己有域名怎么建网站
  • 做一家视频网站吗上海网络排名优化
  • 北京网站设计多少钱seo外贸推广
  • wordpress摘要显示图片网站seo优化皆宣徐州百都网络不错
  • dede茶叶网站模板秒收录关键词代发
  • 怎么做二维码进网站营销技巧美剧
  • 重庆营销网站建设公司友情链接翻译
  • 中山技术支持中山网站建设福州网站排名提升
  • 建设网站图三亚百度推广公司
  • 饮料企业哪个网站做的比较好做网站公司哪家正规
  • 网站后台内容更换怎么做seo在线短视频发布页运营
  • 推拿网站制作seo课程培训班费用
  • 北京网站建设 一流今日世界杯比分预测最新
  • 新手自己做网站关键词排名优化价格
  • 网站备案必须做前置审批吗网站建设方案
  • 教育行业网站制作资源优化网站排名
  • 做怎样的网站能赚钱百度点击器下载
  • 网站建站后维护需要做哪些郑州好的seo外包公司
  • 登陆国外的网站要这么做站长工具seo综合查询工具
  • 网页模板免费源码荆州seo推广
  • 重庆网站推广转化率seo求职
  • 做网站营销公司网络怎么做推广