Inheritance 一种适合该案例的设计模式
我有下面的UML图(如果图片中没有太多信息,那就很抱歉) 所以我得到的是 通过RE类实现的IRE接口。 由RD类实现的IRD接口(后者扩展了RE)。 由RM类实现的IRM接口(后者扩展了RE) 那么,是否有合适的设计模式来表示此digaram 提前谢谢。这不是正确的方法 首先,设计模式并不表示或实现UML类图。反过来说:UML图表示设计模式的结构 根据克里斯托弗·亚历山大(Christopher Alexander)的说法,Gamma等人的灵感来源是一种设计模式: 描述在中反复出现的问题 然后描述了解决方案的核心 问题,以这样一种方式,您可以使用此解决方案数百万次 没有用同样的方法做两次就结束了 UML类图表示解决方案的结构。它不告诉解决方案试图解决什么问题,也不告诉如何解决它。此外,一些设计模式具有非常相似的结构,只有行为或意图有助于产生差异 结构相似性 这就是说,如果您的图表应该表示一种设计模式,但您不记得是哪一种,那么它可能是基于继承的变体:Inheritance 一种适合该案例的设计模式,inheritance,design-patterns,interface,uml,class-diagram,Inheritance,Design Patterns,Interface,Uml,Class Diagram,我有下面的UML图(如果图片中没有太多信息,那就很抱歉) 所以我得到的是 通过RE类实现的IRE接口。 由RD类实现的IRD接口(后者扩展了RE)。 由RM类实现的IRM接口(后者扩展了RE) 那么,是否有合适的设计模式来表示此digaram 提前谢谢。这不是正确的方法 首先,设计模式并不表示或实现UML类图。反过来说:UML图表示设计模式的结构 根据克里斯托弗·亚历山大(Christopher Alexander)的说法,Gamma等人的灵感来源是一种设计模式: 描述在中反复出现的问题 然后
是adaptee,这是一个具有现有接口的类,需要进行调整RE_Impl
和IRM
是重组必须适应的目标接口李>IRD
和RM_Impl
是使自适应工作的适配器李>RD_Impl
IRM
和IRD
提供的内容与IRE
完全无关,那么它根本就不是适配器。这不是正确的方法
首先,设计模式并不表示或实现UML类图。反过来说:UML图表示设计模式的结构
根据克里斯托弗·亚历山大(Christopher Alexander)的说法,Gamma等人的灵感来源是一种设计模式:
描述在中反复出现的问题
然后描述了解决方案的核心
问题,以这样一种方式,您可以使用此解决方案数百万次
没有用同样的方法做两次就结束了
UML类图表示解决方案的结构。它不告诉解决方案试图解决什么问题,也不告诉如何解决它。此外,一些设计模式具有非常相似的结构,只有行为或意图有助于产生差异
结构相似性
这就是说,如果您的图表应该表示一种设计模式,但您不记得是哪一种,那么它可能是基于继承的变体:
是adaptee,这是一个具有现有接口的类,需要进行调整RE_Impl
和IRM
是重组必须适应的目标接口李>IRD
和RM_Impl
是使自适应工作的适配器李>RD_Impl
然而,这只是猜测,因为模式不是由其结构定义的。适配器的目的是将一个接口转换为另一个接口。因此,如果接口
IRM
和IRD
提供了与IRE
完全无关的东西,那么它根本就不是适配器。为什么需要一个模式?这是你的设计,这就是它。你为什么想要一个图案?这是你的设计,也是你的设计。正如你所说,IRM和IRD提供的是彼此无关的不同功能,它们只是为了丰富RE_Iml类,所以我将提供RD_Impl&RM_Impl。正如你所说,IRM和IRD提供的是彼此无关的不同功能,他们只是为了丰富RE_Iml课程,所以我会有RD_Impl&RM_Impl。