【C#设计模式(13)——代理模式(Proxy Pattern)】

前言

代理模式通过引入一个中间代理对象去控制对原始对象的访问,并在访问过程中进行控制或增强。同时保持客户与原始对象之间的解耦。

代码

csharp 复制代码
 //主题
 public abstract class Subject
 {
     public abstract void Request();
 }

 //实际主题
 public class RealSubject : Subject
 {
     public override void Request()
     {
         Console.WriteLine("real request address: 10.110.119.120");
     }
 }
 // 代理主题
 public class Proxy : Subject
 {
     private RealSubject _subject;
     public Proxy()
     {
         _subject = new RealSubject();
     }

     public override void Request()
     {
         Console.WriteLine("init request config....");

         _subject.Request();

         Console.WriteLine("use proxy realm name request :https://www.baidu.com");
     }
 }

/*
 * 结构型模式:Structural Pattern
 * 代理模式:Proxy Pattern
 */
internal class Program
{
    static void Main(string[] args)
    {
        Proxy proxy = new Proxy();
        proxy.Request();
        Console.ReadLine();
    }
}

运行结果

相关推荐
唐宋元明清21882 小时前
.NET Win32磁盘动态卷/跨区卷触发“函数不正确”问题排查
windows·c#·存储
hez20102 小时前
Satori GC:同时做到高吞吐、低延时和低内存占用
c#·.net·.net core·gc·clr
刀法如飞11 小时前
AI时代,程序员都应该是算法思想工程师
人工智能·设计模式·程序员
在西安放羊的牛油果18 小时前
我把 2000 行下单代码,重构成了一套交易前端架构
前端·设计模式·架构
唐青枫20 小时前
C#.NET Channel 深入解析:高性能异步生产者消费者模型实战
c#·.net
小峥降临1 天前
Rokid UXR 的手势追踪虚拟中更真实的手实战开发【含 工程源码 和 最终完成APK】
c#
寅时码2 天前
React 正在演变为一场不可逆的赛博瘟疫:AI 投毒、编译器迷信与装死的官方
前端·react.js·设计模式
willow5 天前
Axios由浅入深
设计模式·axios
晨星shine5 天前
GC、Dispose、Unmanaged Resource 和 Managed Resource
后端·c#