VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > c#编程 >
  • 设计模式之适配器模式

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

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

Prototype#

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

  • Target: 一个标准模式的类型,标准化接口
  • Adaptee: 一个需要适配的类型,特殊类型
  • TargetAdapterAdaptee 针对 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 来适配各种不同的第三方的依赖注入框架

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

Reference#

  • https://github.com/WeihanLi/DesignPatterns/tree/master/StructurePattern/AdapterPattern
  • https://github.com/dotnet/extensions/blob/v3.1.6/src/Hosting/Hosting/src/Internal/ServiceFactoryAdapter.cs
  • https://github.com/dotnet/extensions/blob/v3.1.6/src/Hosting/Hosting/src/HostBuilder.cs

作者:WeihanLi

出处:https://www.cnblogs.com/weihanli/p/adapter-pattern.html



相关教程