設(shè)計(jì)模式之適配器模式
Intro
適配器模式(Adapter
),將一個(gè)類的接口適配成用戶所期待的蛇尚。一個(gè)適配允許通常因?yàn)榻涌诓患嫒荻荒茉谝黄鸸ぷ鞯念惞ぷ髟谝黄穑龇ㄊ菍㈩愖约旱慕涌诎谝粋€(gè)已存在的類中。也被稱為 Wrapper 模式斋泄。
通常這個(gè)類是外部的類每篷,不能直接修改瓣戚,所以需要做一層包裝,以適配現(xiàn)有的接口焦读。
Prototype
實(shí)現(xiàn)適配器模式子库,通常有這幾個(gè)組件
-
Target
: 一個(gè)標(biāo)準(zhǔn)模式的類型,標(biāo)準(zhǔn)化接口 -
Adaptee
: 一個(gè)需要適配的類型矗晃,特殊類型 -
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 中的應(yīng)用實(shí)例:
之前介紹的 asp.net core 3.x 里引入了 ServiceProviderFactory
,使得 .net core 可以更方便的集成第三方的依賴注入框架仑嗅,這里使用了適配器模式通過 ServiceFactoryAdapter
來適配各種不同的第三方的依賴注入框架
更多內(nèi)容可以參考文末的源碼鏈接查看源碼