首页 > 其他分享 >解耦---组件模式

解耦---组件模式

时间:2023-09-05 15:56:24浏览次数:57  
标签:容器 模式 --- 耦合 优点 缺点 之间 组件

优点:

1、代码复用,对比。

2、通过使用组件容器对象,可以降低组件之间得耦合。

缺点:

1、组件之间通信比较复杂。

 

组件之间通信方式:

1、组件容器对象保存组件需要的状态

  优点:组件之间可以直接从容器对象获取所需要的数据,降低组件之间的耦合

  缺点:当使用相同的组件容器,但是使用不同的组件配置,并且容器对象的状态不被其中的组件所需要,这时会浪费内存。

     通过共享状态,组件之间的执行顺序需要格外小心。

2、直接相互引用

  优点:组件A持有组件B的引用,组件A可以直接获取组件B的数据。简单直接

  缺点:组件之间保持紧密的耦合。

3、通过传递信息的方式:组件A通过容易对象向所有组件传递信息,有点类似于消息派发

  优点:组件之间是解耦合的,组件只跟传递的消息耦合。容器类非常简单,只需要进行消息的传递,不需要保存共享的状态。

  缺点:每个组件都会接收到派发的消息。

 

标签:容器,模式,---,耦合,优点,缺点,之间,组件
From: https://www.cnblogs.com/lyc10/p/17679863.html

相关文章

  • 2023暑假集训总结-zxy
      在这个暑假集训期间,我度过了充实而有意义的日子,尽管没有很大的进步,也算是有些收获。 在集训中,我阅读完了老师曾经推荐的一本较为简单的数据结构的书,虽然我没有举一反三的能力,但也使我对数据结构有了初步的了解和认识。写题还是照样写不出来,但好像不像以往那样一头雾水了,是......
  • Go - benchmark cpuprofile
    zzh@ZZHPC:/zdata/MyPrograms/Go/aaa$gotest-runNONE-bench.goos:linuxgoarch:amd64pkg:zzh/aaacpu:Intel(R)Core(TM)[email protected]/opPASSokzzh/aaa1.392szzh@ZZHPC:/zdata/MyPrograms/Go......
  • 从零开始一个vue3前端项目day04-头部导航篇
    在实际开发项目中通常会把头部导航栏写成一个通用组件,这里来具体说一下实现思路1:front-header组件就是我们的头部导航栏,路由我们已经配置好了,把每个导航的首页路径,配置成navList(包含name,path),这样就通过遍历navList就能写出一个首页导航组件 2:导航的选中状态实现,不仅仅是切......
  • 办公软件套件-office2021 win+mac版
    Office2021是由微软公司开发的一套全面的办公软件套件。作为全球最受欢迎的办公软件之一,Office2021提供了一系列强大的工具和功能,帮助用户在各种工作场景中高效地处理文档、数据、演示和电子邮件等任务。→→↓↓载Office2021mac/win 首先,Office2021包含了经典的文字处理......
  • 解决代码使用CompletableFuture做异步时spring-cloud-starter-sleuth的日志追踪号为空
    产生问题原因就是异步调用,导致spanId和traceId丢失了@Async注解的异步调用是没问题的前提使用spring-cloud-starter-sleuthjar包版本2.2.8.RELEASE关于追踪号的xml配置为<pattern>%yellow(%date{yyyy-MM-ddHH:mm:ss.SSS})[%X{X-B3-TraceId:-},%X{X-B3-SpanId:-},%X{X-B......
  • 二叉树-257二叉树的所有路径带回溯思想
    257. 二叉树的所有路径1#Definitionforabinarytreenode.2#classTreeNode:3#def__init__(self,val=0,left=None,right=None):4#self.val=val5#self.left=left6#self.right=right7classSolution:8......
  • Springboot+Quartz+Dynamic-datasource
    在使用dynamic-datasource多数据源切换场景下,实现Quartz任务持久化配置和API动态调度1.pom依赖暂未找到版本对应关系,若有版本不一致异常,请自行尝试升降版本。<dependencies><!--动态数据源--><dependency><groupId>com.baomidou</groupI......
  • 数据艺术,成就科学现代的全面预算管理模式
    在信息化时代的今天,数据分析不仅仅是企业和个人需要掌握的技能,也成为了艺术与科学的结合。数据科学的发展之快,将企业推向了市场经济竞争的风口浪尖,通过数据分析来了解企业未来发展动向要求企业拥有更好的成熟度。数据是触及运营业务的关键驱动因素,这需要大数据思维和能力,来成就更加......
  • 软件开发中的原则 - SOLID
    在软件开发中,前人对软件系统的设计和开发总结了一些原则和模式,不管用什么语言做开发,都将对我们系统设计和开发提供指导意义。本文主要将总结这些常见的原则,和具体阐述意义。开发原则SOILD面向对象的基本原则(solid)是五个,但是在经常被提到的除了这五个之外还有迪米特法则和合......
  • 2023暑假集训总结-lzg
    本人有幸成为程序设计基础暑期集训中的一员,在经历了长达两个月的集训后,我从中收获了很多。    首先是在集训中我学习到了很多知识,在这两个月里,我先是听了一部分ACwing上的课,学到了很多新的算法知识,不过现在掌握的还是相当不熟练。其次为了熟练运用新学到的知识我也在牛......