一种适合情况的设计模式

问题描述 投票:1回答:1

我有下面的UML图(很抱歉,如果图片没有很多信息,很抱歉)。

enter image description here所以我有的是

IRE接口,由RE类实现。IRD接口,由RD类实现(后者扩展了RE)。由RM类实现的IRM接口(后者扩展了RE)。

那么是否有合适的设计模式来代表这种digaram?

谢谢你。

inheritance design-patterns interface uml class-diagram
1个回答
3
投票

这不是正确的方法

首先,设计模式不代表或实现UML类图。相反,UML图表示设计模式的结构。

根据克里斯托弗·亚历山大(Christopher Alexander),Gamma等人的灵感来源。设计模式:

描述了在以下位置反复出现的问题我们的环境,然后描述该解决方案的核心问题,以这种方式您可以使用此解决方案数百万次一次都没有用相同的方法完成]

UML类图表示解决方案的结构。它没有说明解决方案试图解决什么问题,也没有说明解决方案。此外,一些设计模式具有非常相似的结构,只有行为或意图可以帮助做出改变。

结构相似性

据说,if您的图应该表示一种设计模式,但是您不记得是哪个模式,它可能是adapter,更确切地说是基于继承的变体:

  • [RE_Impl是Adaptee,这是具有现有接口的类,需要对其进行调整]]
  • IRMIRD是RE_Impl必须适应的目标接口。
  • RM_ImplRD_Impl是使适配起作用的适配器。
  • 但是,这只是一个猜测,因为模式不是由其结构定义的。适配器的目的是将一个接口转换为另一个接口。因此,如果接口IRMIRD提供的东西与IRE完全无关,那么它根本就不是适配器。

© www.soinside.com 2019 - 2024. All rights reserved.