设计模式之适配器模式

设计模式之适配器模式

Intro

适配器模式(Adapter),将一个类的接口适配成用户所期待的。一个适配允许通常因为接口不兼容而不能在一起工作的类工作在一起,做法是将类自己的接口包裹在一个已存在的类中。也被称为 Wrapper 模式。

通常这个类是外部的类,不能直接修改,所以需要做一层包装,以适配现有的接口。

Prototype

实现适配器模式,通常有这几个组件

  • Target: 一个标准模式的类型,标准化接口
  • Adaptee: 一个需要适配的类型,特殊类型
  • TargetAdapter: Adaptee 针对 Target 的适配器
public class Target
{
    public virtual void Request()
    {
        Console.WriteLine("This is a common request");
    }
}

public class Adaptee
{
    public void SpecialRequest()
    {
        Console.WriteLine("this is a special request");
    }
}

public class TargetAdapter : Target
{
    private readonly Adaptee _adaptee = new Adaptee();

    public override void Request()
    {
        _adaptee.SpecialRequest();
    }
}

More

asp.net core 中的应用实例:

之前介绍的 asp.net core 3.x 里引入了 ServiceProviderFactory,使得 .net core 可以更方便的集成第三方的依赖注入框架,这里使用了适配器模式通过 ServiceFactoryAdapter 来适配各种不同的第三方的依赖注入框架

image
image

更多内容可以参考文末的源码链接查看源码

Reference

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容