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

酒店网站建设哪家好微信公众号优惠劵网站怎么做的

酒店网站建设哪家好,微信公众号优惠劵网站怎么做的,成都模板网站建设,wordpress源代码插件目录 一、Python访问者模式介绍 二、访问者模式使用 一、Python访问者模式介绍 访问者模式#xff08;Visitor Pattern#xff09;是一种行为型设计模式#xff0c;它能够将算法与对象结构分离#xff0c;使得算法可以独立于对象结构而变化。这个模式的主要思想是#…目录 一、Python访问者模式介绍 二、访问者模式使用 一、Python访问者模式介绍 访问者模式Visitor Pattern是一种行为型设计模式它能够将算法与对象结构分离使得算法可以独立于对象结构而变化。这个模式的主要思想是将对象结构和算法分离开来使得算法可以独立于对象结构而变化。该模式的核心概念是定义一个访问者对象它是对某个对象结构中各个元素的操作这种操作可以改变元素的类或状态。 访问者模式的主要功能是提供一个统一的访问接口使得访问者能够遍历整个对象结构对各个元素进行操作。 优点 1、访问者模式可以将数据结构与算法分离增强了代码的可扩展性和可维护性。 2、访问者模式可以更加灵活地适应不同的对象结构易于扩展。 3、访问者模式可以实现双重分派提高了代码的灵活性和可复用性。 缺点 1、访问者模式增加了代码的复杂度需要定义访问者类和被访问类。 2、访问者模式扩展起来比较困难新增元素需要修改访问者接口并且所有访问者实现类都需要进行修改。 应用场景 1、需要对复杂的对象结构进行遍历并对其中的元素进行不同的操作。 2、需要对对象结构中的不同元素进行不同的操作例如对不同类型的节点进行不同的访问。 访问者模式的使用方式一般包括两个主要步骤 1、定义访问者接口包含对不同类型元素的不同访问方法。 2、定义被访问者接口包含接受访问者访问的方法这个方法会调用访问者对当前对象进行访问。 在应用程序开发中访问者模式可以用于图形编辑器、编译器、XML解析器等需要对复杂的对象结构进行遍历和操作的场景。其工作原理是访问者模式通过定义访问者接口和被访问者接口将遍历和操作分离开来从而提高代码的可维护性和可扩展性。当访问者需要访问被访问者的某个元素时它会调用该元素的accept方法并将自己作为参数传递给该方法从而实现对元素的访问。 二、访问者模式使用 假设有一个程序需要对不同类型的员工进行计算工资员工的类型包括全职员工和兼职员工全职员工有基本工资和奖金兼职员工只有小时工资。这个程序使用访问者模式来实现可以分为以下几个步骤 1、定义访问者接口SalaryVisitor包含对不同类型员工进行访问的方法visit_fulltime和visit_parttime 2、定义被访问者接口Employee包含接受访问者访问的方法accept该方法会根据当前员工的类型调用访问者的对应方法 3、定义具体的访问者类TaxSalaryVisitor和BonusSalaryVisitor分别实现对全职员工和兼职员工的计算方法 4、在程序中使用访问者模式进行计算首先创建不同类型的员工对象然后创建访问者对象最后调用员工对象的accept方法传入访问者对象进行访问 # 访问者模式# 定义访问者接口 class SalaryVisitor():def visit_fullltime(self): # 全职员工passdef visit_parttime(self): # 兼职员工pass# 定义被访问者接口 class Employee():def accept(self, visitor): # 接受访问passclass FulltimeEmployee(Employee):def __init__(self, base_salary, bonus): # 全职员工基本工资、奖金self.base_salary base_salaryself.bonus bonusdef accept(self, visitor):return visitor.visit_fullltime(self)class ParttimeEmployee(Employee):def __init__(self, hourly_wage, total_hours): # 兼职员工时薪小时self.hourly_wage hourly_wageself.total_hours total_hoursdef accept(self, visitor):return visitor.visit_parttime(self)# 定义具体的访问者类 class TaxSalaryVisitor(SalaryVisitor):def visit_fullltime(self, fulltime_employee):tax (fulltime_employee.base_salary fulltime_employee.bonus) * 0.1return taxdef visit_parttime(self, parttime_employee):tax parttime_employee.hourly_wage * parttime_employee.total_hours * 0.1return taxclass BonusSalaryVisitor(SalaryVisitor):def visit_fullltime(self, fulltime_employee):bonus fulltime_employee.bonusreturn bonusdef visit_parttime(self, parttime_employee):return 0# 创建实例 fulltime_employee FulltimeEmployee(10000, 5000) parttime_employee ParttimeEmployee(50, 160)tax_visitor TaxSalaryVisitor() bonus_visitor BonusSalaryVisitor()full_tax fulltime_employee.accept(tax_visitor) full_bonus fulltime_employee.accept(bonus_visitor)part_tax parttime_employee.accept(tax_visitor) part_bonus parttime_employee.accept(bonus_visitor)print(f全职员工税{full_tax}, 奖金{full_bonus}) print(f兼职员工税{part_tax}, 奖金{part_bonus}) 运行结果 全职员工税1500.0,  奖金5000 兼职员工税800.0,  奖金0 这个程序的工作原理是定义了访问者接口和被访问者接口将遍历和操作分离开来从而实现了对不同类型员工的计算。当访问者需要访问被访问者的某个元素时它会调用该元素的accept方法并将自己作为参数传递给该方法从而实现对元素的访问。 使用访问者模式的方法是首先定义访问者接口和被访问者接口然后在被访问者接口中定义accept方法根据被访问者的类型调用访问者的对应方法。在定义具体的访问者类时需要实现对不同类型被访问者的具体操作。最后在程序中创建不同类型的被访问者对象和访问者对象通过调用accept方法进行访问和操作。
http://www.hkea.cn/news/14288224/

相关文章:

  • 设计一个企业网站主页本地推广平台有哪些
  • 光谷做网站推广哪家好重庆营销网站
  • 网站都需要续费吗网站APP推广
  • 如何做谷歌网站优化做网站在哪儿买空间
  • 天河建设网站企业溧水做网站价格
  • 建站公司 万维科技进销存
  • 网站建设规划书的制作网络广告策划与创意
  • 公司网站建设申请襄阳做网站多少钱
  • 移动互联时代网站建设伪静态规则变动对网站的影响
  • 四川学校网站建设wordpress询价管理
  • 淄博做网站推广公司门户网站字体
  • wordpress公众号授权登录网站如何做seo规划
  • 成都微网站公司做网站的设计流程
  • 网站建设价类型网站运营公司哪家值得推荐
  • 网站后台拿shell广东石油化工建设集团公司网站
  • 福建省建设执业注册中心网站苏网站建设
  • 长沙企业网站制作服务报价公司网站建设攻略
  • 网站建设方案书0朋友圈产品推广文案
  • 做一个自己的免费网站网站备案信息变更
  • 网站建设需求模板装修找什么平台比较好
  • 网站加载速度慢的原因电商推广
  • 找设计师的网站flash中文网站模板
  • 企业网站建设专业做设计的素材网站
  • 河南专业网站建设公司哪家好凡客装修
  • 免费传奇网站域名哪里注册网站建设中html下载
  • 洛阳做网站推广做五金有哪些网站推广
  • 有没有找客户的网站高端建材门店年销售额
  • 卖建材的网站有哪些小型网站搭建
  • 毕业设计餐饮网站建设海东电子商务网站建设
  • 设计必知的设计网站 039wordpress安装超时