有人可以用很好的例子向我解释可插拔适配器的概念吗?
有人可以用很好的例子向我解释可插拔适配器的概念吗?
Can anybody explain the concept of pluggable adapter to me with good example?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
有人可以用很好的例子向我解释可插拔适配器的概念吗?
Can anybody explain the concept of pluggable adapter to me with good example?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(3)
根据我对 Google 结果的快速阅读了解,可插拔适配器是一种不针对特定适配器进行硬编码的适配器。 从表面上看(适配器自己的接口),都是一样的,但是可以适应不同接口的不同适配器。 我发现此线程非常解释:
还有这个:
将其视为来自外星人的抱脸者; 当它拥抱一张脸时,你只能看到拥抱者粘糊糊的背部。 您可以用棍子戳它并尝试撬开它的手臂(适配器接口)。 但它基本上可以拥抱任何人(适应者)的脸,无论面部特征如何。 也许我有点过分了,但是,嘿,我喜欢《外星人》。
From what I understood from a quick reading of Google results, a pluggable adapter is an adapter that isn't hard-coded against a specific adaptee. On the surface (the adapter's own interface), it's all the same but it can adapt to different adaptees with different interfaces. I found this thread pretty explanatory:
And this:
Think of it as a facehugger from Alien; when it hugs a face, all you see is the slimy back of the facehugger. You can poke it with a stick and try to pry off its arms (the adapter interface). But it basically can hug the face of any human (the adaptee), regardless of the face features. Maybe I'm pushing it a bit, but, hey, I love Alien.
您可以阅读这篇关于适配器/可插拔模式的文章:
目录在这篇文章中:
引用:
这是一个小例子:
我们有两个类 - Foo 和 Foo。 Boo 向控制台输出一些字符串。 适配器类可以调整这两个类的方法来提供客户端所需的接口(SaySomething)。 请注意,不依赖于接口名称 - 我们可以轻松调整 SayHey 和 Bark 方法。
You can read this article about adapter/pluggable pattern:
Table of content in this article:
Quote:
Here is a small example:
We have two classes - Foo & Boo that outputs some string to console. Adapter class can adapt methods from both classes to provide interface (SaySomething) required by client. Note that there is no dependency on interface name - we can easily adapt both SayHey and Bark methods.
Pluggable Adapter 的一个显着特点是客户端调用的方法和接口中存在的方法可以不同。
这通常可以通过在 C# 中使用 delegate、Func 或 Action 来实现
A distinguish Feature of the Pluggable Adapter is that the method called by the client and the method existing in the interface can be different.
This can normally acheived with the use of delegate,Func or Action in C#