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

甘肃省建设工程网上投标网站网络推广策划案格式模板和范文

甘肃省建设工程网上投标网站,网络推广策划案格式模板和范文,厦门 网站建设 公司,学做标书网站介绍 责任链模式是一种行为型设计模式#xff0c;它允许多个对象以链式的形式依次处理请求#xff0c;直到请求被处理或者无处理对象为止 实现方式 责任链模式由多个处理器组成#xff0c;每个处理器都可以处理一种请求。如果当前处理器无法处理请求#xff0c;它将把请…介绍 责任链模式是一种行为型设计模式它允许多个对象以链式的形式依次处理请求直到请求被处理或者无处理对象为止 实现方式 责任链模式由多个处理器组成每个处理器都可以处理一种请求。如果当前处理器无法处理请求它将把请求传递给下一个处理器直到请求被处理或者没有处理器可以处理为止。 案例 假设我们正在开发一个电子商务平台现在需要实现一个购物车功能。当用户添加商品到购物车中时需要进行以下验证 商品是否存在商品库存是否充足商品是否已经下架 我们可以使用责任链模式来实现这个购物车功能。首先定义一个处理器基类 class CartValidator:def __init__(self, next_validatorNone):self.next_validator next_validatordef validate(self, item):if self.next_validator:return self.next_validator.validate(item)return True 这个基类包含了一个next_validator属性表示后继处理器以及一个validate方法用于验证商品是否合法。如果存在后继处理器则将验证请求传递给后继处理器。 接下来我们可以定义三个具体的验证处理器分别验证商品是否存在、商品库存是否充足以及商品是否已经下架 # 模拟 is_product_exist True # 判断商品是否存在 is_product_stock_enough True # 判断商品库存是否充足 is_product_on_sale True # 判断商品是否已经下架class ProductExistValidator(CartValidator):def validate(self, item):# 判断商品是否存在# if not is_product_exist(item):if not is_product_exist:print(商品不存在)return Falsereturn super().validate(item)class ProductStockValidator(CartValidator):def validate(self, item):# 判断商品库存是否充足# if not is_product_stock_enough(item):if not is_product_stock_enough:print(库存不足)return Falsereturn super().validate(item)class ProductStatusValidator(CartValidator):def validate(self, item):# 判断商品是否已经下架# if not is_product_on_sale(item):if not is_product_on_sale:print(商品已下架)return Falsereturn super().validate(item)product_validator_chain ProductExistValidator(ProductStockValidator(ProductStatusValidator()))def add_to_cart(item):if product_validator_chain.validate(item):# 添加商品到购物车中# add_item_to_cart(item)print(添加成功, item)passelse:# 商品验证失败print(商品验证失败)这三个处理器都继承自CartValidator类并覆盖了validate方法实现了具体的商品验证逻辑。如果商品验证通过则调用super() .validate(item)方法将验证请求传递给下一个处理器。 最后我们可以将这三个处理器组成一个责任链 product_validator_chain ProductExistValidator(ProductStockValidator(ProductStatusValidator()))测试 正常测试 add_to_cart(IPhone14 pro)输出结果 添加成功 IPhone14 pro库存不足测试 # 模拟库存不足 is_product_stock_enough False add_to_cart(IPhone14 pro)输出结果 库存不足 商品验证失败使用场景 多个对象需要处理同一种请求但处理的顺序和方式不同。例如一个在线商店需要对订单进行风险评估评估过程包括多个步骤如检查订单是否来自欺诈用户、检查收货地址是否存在风险等。每个步骤可以使用一个处理器来处理这些处理器可以组成一个责任链对订单进行逐步风险评估。 对象不知道该由哪个处理器处理请求需要动态确定处理器。java中的web框架的过滤器需要根据请求的URL来选择合适的处理器处理器可以根据自身能力来决定是否能够处理请求。 动态扩展。在系统中需要动态添加或删除处理器同时保证请求可以被正确处理。例如一个安全检查系统需要根据系统的安全策略来动态添加或删除安全检查处理器同时保证请求可以被正确处理。 以上就是对责任链模式的介绍后面还会介绍更多的设计模式。 欢迎关注学习不迷路
http://www.hkea.cn/news/14462299/

相关文章:

  • 点读软件网站建设如何线上推广自己产品
  • 山东阳信建设局网站七牛云wordpress加速
  • 大学科研项目做网站网站后台图片传不上去怎么办
  • 网站改版的方式大致有建立购物网站
  • google做网站框架网络管理系统中 管理对象是指
  • 欧洲购物网站排名网站建设前期规划方案
  • 北京贸易公司网站制作宁夏交通厅建设局网站
  • 不花钱可以做网站吗dw如何做商业网站
  • 淘宝客网站搜索怎么做百度在线识图
  • 网站与规划设计思路一天能赚100元的app
  • 可以做手机网页的网站飞猪旅游的网站建设
  • 用DW给网站做后台域名注册完成后怎么做网站
  • 免费行情网站推荐兰州网站排名外包
  • 高中网站建设计划表做网站用什么字体最明显
  • 手机网站开发公司哪家最专业找网站开发项目
  • 电子商务网站建设与管理 笔记网站开发 职位描述
  • 网站虚拟主机购买教程内蒙能源建设集团网站
  • 旅游网站 建设平台分析wordpress cnzz
  • 用网站做宣传的费用wordpress插件社交分享
  • 沈阳建网站企业微魔方建站
  • 成都 php 网站视频网站开发项目
  • 长春哪家网络公司做网站专业欢迎访问中国建设银行官网
  • 做网站的职业叫什么做商城网站需要的功能
  • 室内装修设计网站推荐免费的求职简历模板网站
  • 网站免费正能量软件不良微信公众号怎么发布作品
  • 网站文字源码wordpress显示icp备案
  • 自己做钓鱼网站电子商务中的网站开发
  • 北京大型网站优化高端网站制作流程
  • 监控做斗鱼直播网站珠宝出售网站模板
  • 做拼团的网站成都软件定制