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

青岛做公司网站注册的多吗wordpress 怎么安装插件

青岛做公司网站注册的多吗,wordpress 怎么安装插件,wordpress多张图片,wordpress手机端网站模板下载失败一、说明 装饰器模式是一种结构型设计模式#xff0c;旨在动态的给一个对象添加额外的职责。 (一) 解决问题 不改变原有对象结构的情况下#xff0c;动态地给对象添加新的功能或职责#xff0c;实现透明地对对象进行功能的扩展。 (二) 使用场景 如果用继承来扩展对象行… 一、说明 装饰器模式是一种结构型设计模式旨在动态的给一个对象添加额外的职责。 (一) 解决问题 不改变原有对象结构的情况下动态地给对象添加新的功能或职责实现透明地对对象进行功能的扩展。 (二) 使用场景 如果用继承来扩展对象行为的方案难以实现或者根本不可行时可以考虑使用装饰器模式。希望在无需修改代码的情况下即可使用对象 且希望在运行时为对象新增额外的行为。 二、结构 部件Component声明封装器和被封装对象的公用接口。具体部件Concrete Component类是被封装对象所属的类。它定义了基础行为但装饰类可以改变这些行为。基础装饰Base Decorator类拥有一个指向被封装对象的引用成员变量。该变量的类型应当被声明为通用部件接口这样它就可以引用具体的部件和装饰。装饰基类会将所有操作委派给被封装的对象。具体装饰类Concrete Decorators定义了可动态添加到部件的额外行为。具体装饰类会重写装饰基类的方法并在调用父类方法之前或之后进行额外的行为。客户端Client可以使用多层装饰来封装部件只要它能使用通用接口与所有对象互动即可。 三、伪代码 #!/usr/bin/env python # -*- coding: UTF-8 -*- __doc__ 装饰器模式例实现咖啡店的订单系统不同种类的咖啡可以搭配不同的调料使用装饰器对原有对象 增加相应配料信息和价格 class Coffee:基础组件类 - 咖啡def cost(self):return 9.9class Espresso(Coffee):具体组件类 - 浓缩咖啡def cost(self):return super().cost() 1def description(self):return 浓缩咖啡class Decorator(Coffee):装饰器基类 - 调料def __init__(self, coffee):self._coffee coffeedef cost(self):return self._coffee.cost()def description(self):return self._coffee.description()class Milk(Decorator):具体装饰器类 - 牛奶def cost(self):return super().cost() 2def description(self):return super().description() 牛奶class Sugar(Decorator):具体装饰器类 - 糖def cost(self):return super().cost() 0.5def description(self):return super().description() 糖# 客户端代码 if __name__ __main__:浓缩咖啡 (10.9 )浓缩咖啡 牛奶 (12.9 )浓缩咖啡 牛奶 糖 (13.4 )coffee Espresso()print(f{coffee.description()} ({coffee.cost()} ))# 加入牛奶coffee_with_milk Milk(coffee)print(f{coffee_with_milk.description()} ({coffee_with_milk.cost()} ))# 再加入糖coffee_with_sugar Sugar(coffee_with_milk)print(f{coffee_with_sugar.description()} ({coffee_with_sugar.cost()} ))四、优缺点 优点 灵活性高装饰器模式可以动态地给一个对象添加额外的功能而不需要改变其结构单一职责原则。 你可以将实现了许多不同行为的一个大类拆分为多个较小的类。提高了代码复用性可以将装饰器类与具体的组件类分开使得装饰器类可以复用于不同的组件类。 缺点 顺序对功能影响装饰器的顺序会影响最终的功能效果可能会导致功能组合的结果不可预测需要谨慎设计装饰器的顺序。增加了系统复杂性 跳转主页【Python笔记】设计模式-CSDN博客
http://www.dnsts.com.cn/news/106633.html

相关文章:

  • 邢台本地网站自己的网站首页背景怎么做
  • 深圳网站建设公司招聘电话销售大连公司企业网站建设
  • 做seo是要先有网站吗大连网站建设流程图
  • 创业网站推广怎么做发果怎么做视频网站
  • 平东网站建设有云服务器和域名怎么做网站
  • 酒生产企业网站建设的目的高清免费素材网站
  • 做零食用哪个网站好wifi已连接(无法上网)
  • 点击网络怎么做网站wordpress 版微信小程序
  • 网站客户端制作教程网站栏目设置完整度建设
  • 上城区网站建设价格设计制作小车二教学视频
  • 乐山市住房和城乡建设局网站代理怎么做
  • 技术支持 创思佳网站建设成都网站优化外包
  • 东莞食品公司东莞网站建设电子商务网络营销方式
  • 建设项目网站备案申请表WordPress分页加载更多ajax
  • 胶南市场建设服务中心网站网站响应式技术
  • 南方科技大学网站建设企业网站建设首页要写什么内容
  • 网站标签名词网站建设类
  • 打造自己的网站网站无法排版
  • 运输网站建设上海市建设市场管理信息平台网站
  • 沈阳网站建设小志wordpress侧边栏固定
  • 商城网站前期准备龙华区属于深圳哪个区
  • 古网站典模板网站开发公司排行
  • 公司网站建站公司net的网站建设
  • 评论给网站带来的益处上海室内设计事务所
  • 软件开发 网站建设 游戏开发阿坝州网站制作
  • 网站建设的销售渠道wine wordpress theme
  • 网站运营职业分析jarvis wordpress
  • 专门找人做软件的网站新冠疫苗最新消息
  • 聊城高唐网站建设公司翡翠原石网站首页怎么做
  • 针织厂家东莞网站建设荆州哪里有做网站的