GOF中提到的可插拔适配器

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

有关此主题的Stackover流相关文章:Post_1Post_2

以上帖子很好,但是我仍然无法得到我的困惑的答案,因此,我将其作为新帖子放在这里。基于GOF的《可重用面向对象软件的元素》的[[我的问题,关于可插拔适配器的内容(在下面的问题之后提到),因此,如果讨论/回答/意见更侧重于现有内容,我将不胜感激GOF中有关可插拔适配器的示例,而不是其他示例Q1)内置接口适配是什么意思?Q2)与普通适配器相比,可插拔接口有何特殊之处?通常的适配器还可以使一个接口适应另一个接口。Q3)即使在这两种用例中,我们都取决于GetChildren(Node)看到了提取的“窄接口” CreateGraphicNode(Node)Node的两种方法。 Node是Toolkit的内部组件。 Node是否与GraphicNode相同,并且在CreateGraphicNode中传递的参数仅用于填充已创建的Node对象的状态(名称,parentID等)吗? 根据GOF(我用很少的单词/句子标记了粗体以强调与我的问题相关的内容)

ObjectWorks \ Smalltalk [Par90]使用术语

可插拔适配器用

内置接口适配

描述类。考虑一个TreeDisplay小部件,该小部件可以以图形方式显示树结构。如果这是仅用于一个应用程序的专用小部件,则我们可能要求它显示的对象具有特定的接口;也就是说,所有这些都必须来自Tree抽象类。但是如果我们想

使TreeDisplay更具可重用性

(例如,我们希望使其成为工具箱的一部分有用的小部件),那么该要求将是不合理的。应用程序将为树结构定义自己的类。他们不应被迫使用我们的Tree抽象类。不同的树结构将具有不同的接口。
...为Adaptee找到“ narrow”接口,即最小的我们可以进行调整的部分操作。狭窄的界面仅由几个操作组成的操作比与数十种操作进行交互。对于TreeDisplay,适应者是任何层次结构。简约界面可能包括两个操作,它定义了如何在层次结构中显示节点图形化的结构,以及另一个检索节点子级的结构。

然后有两个用例

    “ Narrow Interface”被抽象化并作为TreeDisplay的一部分类enter image description here

  • Narrow Interface被提取为单独的接口,并在TreeDisplay类中具有它的组成enter image description here

  • (还有参数化适配器的第三种方法,但为简单起见,将其跳过)

    与该主题相关的Stackover流相关文章:Post_1和Post_2上面的文章不错,但是我仍然无法得到我的困惑的答案,因此,我将其作为新文章放在这里。我的问题...

  • java design-patterns adapter pluggable-adapter
    1个回答
    0
    投票
    © www.soinside.com 2019 - 2024. All rights reserved.