예제코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73 |
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CSharp_FacedePattern
{
class SubSystemOne {
public void MethodOne() {
Console.WriteLine(" SubSystemOne Method");
}
}
class SubSystemTwo {
public void MethodTwo() {
Console.WriteLine(" SubSystemTwo Method");
}
}
class SubSystemThree {
public void MethodThree() {
Console.WriteLine(" SubSystemThree Method");
}
}
class SubSystemFour {
public void MethodFour() {
Console.WriteLine(" SubSystemFour Method");
}
}
class Facade {
private SubSystemOne _one;
private SubSystemTwo _two;
private SubSystemThree _three;
private SubSystemFour _four;
public Facade() {
_one = new SubSystemOne();
_two = new SubSystemTwo();
_three = new SubSystemThree();
_four = new SubSystemFour();
}
public void MethodA() {
Console.WriteLine("\nMethodA() ---- ");
_one.MethodOne();
_two.MethodTwo();
_four.MethodFour();
}
public void MethodB() {
Console.WriteLine("\nMethodB() ---- ");
_two.MethodTwo();
_three.MethodThree();
}
}
class Program
{
static void Main(string[] args)
{
Facade facade = new Facade();
facade.MethodA();
facade.MethodB();
Console.ReadKey();
}
}
}
|
cs |
'Programming > Design Pattern' 카테고리의 다른 글
[C# 디자인패턴] 제13강 커맨드패턴 (0) | 2015.07.22 |
---|---|
[C# 디자인패턴] 제12강 프록시 패턴 (0) | 2015.07.21 |
[C# 디자인패턴] 제10강 데코레이터패턴 (0) | 2015.07.18 |
[C# 디자인패턴] 제9강 컴포지트 패턴 (0) | 2015.07.18 |
[C# 디자인패턴] 제8강 브릿지패턴 (0) | 2015.07.18 |