ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

外观模式

2021-06-25 17:31:47  阅读:144  来源: 互联网

标签:外观 void System 模式 子系统 using public 客户端


 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace DesignPattern.StructuralPattern
 8 {
 9     #region 外观模式要点
10     //定义:提供统一的接口,用来访问一系列子系统。
11     //接口保存客户端所需访问的子系统的引用,将客户端的请求重定向到目标子系统
12     //主要是为了客户端与多个子系统的解耦,依赖的对象越多客户端就越不稳定
13     //通过只与外观类交互,会大大减少客户端改变的原因,子系统的扩展或改变不会影响到客户端。
14     //应用:分层结构中,可以作为不同层子系统的入口
15     #endregion
16     public class FacadePattern
17     {
18         SubsystemOne _subsystemOne = null;
19         SubsystemTwo _subsystemTwo = null;
20         //自己创建子系统,也可以由外部作为构造函数参数传入
21         public FacadePattern()
22         {
23             _subsystemOne = new SubsystemOne();
24             _subsystemTwo = new SubsystemTwo();
25         }
26 
27         public void Operation()
28         {
29             if (_subsystemOne != null && _subsystemTwo != null)
30             {
31                 _subsystemOne.OperationOne();
32                 _subsystemTwo.OperationTwo();
33             }
34         }
35     }
36 
37     public class SubsystemOne
38     {
39         public void OperationOne()
40         {
41 
42             Console.WriteLine("OperationOne start");
43         }
44 
45     }
46     public class SubsystemTwo
47     {
48         public void OperationTwo()
49         {
50 
51             Console.WriteLine("OperationTwo start");
52         }
53     }
54 
55 
56     public class Client
57     {
58         public void Operation(FacadePattern facadePattern)
59         {
60             facadePattern.Operation();
61         }
62     }
63 }

 

标签:外观,void,System,模式,子系统,using,public,客户端
来源: https://www.cnblogs.com/howiego/p/14931874.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有