博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
设计模式之适配器模式
阅读量:4032 次
发布时间:2019-05-24

本文共 1151 字,大约阅读时间需要 3 分钟。

设计模式之适配器模式

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 来适配各种不同的第三方的依赖注入框架

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

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

转载地址:http://ptzdi.baihongyu.com/

你可能感兴趣的文章
linux内核学习(2)建立段式内存映射
查看>>
linux内核学习(7)脱胎换骨解压缩的内核
查看>>
以太网基础知识
查看>>
慢慢欣赏linux 内核模块引用
查看>>
kprobe学习
查看>>
慢慢欣赏linux phy驱动初始化2
查看>>
慢慢欣赏linux CPU占用率学习
查看>>
2020年终总结
查看>>
linux内核学习(4)建立正式内核的页式内存映射, 以x86 32位模式为例
查看>>
慢慢欣赏linux 查看硬盘情况
查看>>
慢慢欣赏linux vsftpd的使用
查看>>
慢慢欣赏linux 进程哈希表
查看>>
慢慢欣赏linux qemu编译和启动
查看>>
慢慢欣赏linux qemu gdb调试跟踪
查看>>
慢慢欣赏linux dsa驱动
查看>>
慢慢欣赏linux 用户栈与内核栈
查看>>
慢慢欣赏linux 系统调用
查看>>
windows10打开vmware镜像死机
查看>>
不同的进程是否能够共享fd
查看>>
软件人生感触之六 负载再加重一点点
查看>>