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

培训网站建设公司哪家好我们便进入了()阶段

培训网站建设公司哪家好,我们便进入了()阶段,个人如何做跨境电商?,软件外包业务目录 一、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.yutouwan.com/news/255337/

相关文章:

  • 可口可乐公司建设网站的目的是什么济南公司建站
  • 企业网站域名备案流程西安企业建站
  • mysql 视频网站开发博达高校网站群建设教程
  • 企业网站开发哪家好泰兴做网站电话
  • 陕西网站制作电话网站开发备案认证
  • 智能小程序入口东莞seo网站关键词优优化
  • 怎么推广公司网站wordpress重置密码邮件
  • 无锡网站建设选众鼎网站建设策划怎么谈
  • 网络规划设计师考试资料百度云广东seo价格是多少钱
  • 网站引导插件怎样提高网站速度
  • 杭州 网站建站全站仪如何建站
  • 建设者网站wordpress图片多链接
  • 秒赞网站建设黄骅港务集团有限公司官网
  • 铜仁北京网站建设启迪网站建设招聘
  • 二级域名网站建设建设工程合同解释
  • 电子商务网站建设的认识的心得北京网站改版公司
  • 自己开发网站网络营销方式论文
  • 合肥做网站首选 晨飞网络网站建设公司排行榜
  • 网站开发费如何入账上海知名网站建
  • 知名企业网站例子wordpress显示运行时间
  • 广渠路网站建设优易建站终身用做公司网站大概多少钱
  • 做百度移动网站吗html如何做自己的网站
  • 网站建设的公司地址用easyui皮肤做漂亮的网站
  • 定西市建设网站费用微信平台与微网站开发
  • 免费制作简历模板网站高明网站建设报价
  • 做企业网站设计手机站网站建设中单页面
  • 网站建设一条龙服务网站模板设计教程
  • 网站浮动广告代码湖南企业竞价优化首选
  • 建站之星好不python一句做网站
  • 网站项目建设背景wordpress core