观察者模式属于行为型设计模式吗,python中观察者模式最重要的作用

  观察者模式属于行为型设计模式吗,python中观察者模式最重要的作用

  本文主要介绍Python的设计模式,即行为观察者模式,即PublishSubscribePattern,它定义了一对多的关系,允许多个观察者同时监控一个主题对象。当主题对象的状态发生变化时,所有观察者都会得到通知,这样他们就可以自动更新自己。让我们和边肖一起进入这篇文章来了解细节。

  00-1010一、观察者模式二。应用场景三。代码示例

  

目录

  观察者模式必须包括“观察者”和“被观察者”的角色,观察者和被观察者之间存在逻辑联系。当被观察者发生变化时,观察者会观察到这样的变化,并做出相应的反应。观察例如:业务数据,观察用户界面。

  事实上,大多数观察者模式都是一对多的关系,多个观察者对象可以同时观察一个被观察对象。

  核心观察者模式的实现思路是:的抽象类用于管理所有依赖它的其他类。当核心类发生变化时,它会主动通知和更新其他类。

  

一、观察者模式

  抽象模型有两个方面,其中一个依赖于另一个。将这些方面封装在独立的对象中,使它们能够被独立地更改和重用。一个对象的变化会导致一个或多个其他对象的变化,而不知道会有多少个对象发生变化,这样会降低对象之间的耦合度。一个对象必须通知其他对象,而不知道它们是谁。有必要在系统中创建一个触发链。对象A的行为会影响对象B,对象B的行为会影响对象C,…您可以使用观察者模式来创建连锁触发机制。

  

二、应用场景

  当客户数量减少到阈值时,销售会通知工厂减产,同时通知人力资源开始裁员,反之亦然。

  类别观察器:

  观察者核心类,销售人员

  def __init__(self):

  自我。_number=无

  自我。_department=[]

  @属性

  定义编号(自身):

  回归自我。_数字

  @number.setter

  定义编号(自身,值):

  自我。_number=值

  打印(当前客户数量:{} 。格式(自我。_number))

  对自己来说。_部门:

  对象变化(值)

  打印(-)

  定义通知(自己,部门):

  相关部门

  自我。_department.append(部门)

  Hr:级

  人事部观察员班

  定义更改(自身,值):

  如果值为10:

  打印(“人事变动:裁员”)

  elif值20:

  打印(“人事变动:人员扩充”)

  else:

  打印(“人员不受影响”)

  类别工厂:

  观察者类,工厂类

  定义更改(自身,值):

  如果值为15:

  打印(“生产计划变更:减产”)

  elif值25:

  打印(“生产计划变更:增加生产”)

  else:

  打印(“生产计划保持不变”)

  if __name__==__main__:

  观察者=观察者()

  hr=Hr()

  工厂=工厂()

  观察者.通知(hr)

  观察者.通知(工厂)

  观察者数量=10

  观察者数量=15

  观察者数量=20

  观察者数量=25

  这就是这篇关于Python设计模式行为观察者模式的文章。有关Python设计模式观察者模式的更多信息,请搜索流行的IT软件开发工作室以前的文章或继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: