Facade Pattern

This commit is contained in:
kim
2021-01-17 00:28:49 +09:00
parent 28dfa7044c
commit 47a4544f6f
6 changed files with 69 additions and 0 deletions

View File

@@ -0,0 +1,11 @@
package Facade;
import Facade.system.Facade;
public class Application {
public static void main(String[] args) {
Facade facade = new Facade();
facade.process();
}
}

View File

@@ -0,0 +1,2 @@
Facade Pattern
- 복잡한 과정을 간단하게 제공

View File

@@ -0,0 +1,20 @@
package Facade.system;
public class Facade {
private HelpSystem01 helpSystem01;
private HelpSystem02 helpSystem02;
private HelpSystem03 helpSystem03;
public Facade() {
helpSystem01 = new HelpSystem01();
helpSystem02 = new HelpSystem02();
helpSystem03 = new HelpSystem03();
}
public void process() {
helpSystem01.process();
helpSystem02.process();
helpSystem03.process();
}
}

View File

@@ -0,0 +1,12 @@
package Facade.system;
class HelpSystem01 {
public HelpSystem01() {
System.out.println("Call Constructor : " + getClass().getName());
}
public void process() {
System.out.println("Call Process : " + getClass().getSimpleName());
}
}

View File

@@ -0,0 +1,12 @@
package Facade.system;
class HelpSystem02 {
public HelpSystem02() {
System.out.println("Call Constructor : " + getClass().getName());
}
public void process() {
System.out.println("Call Process : " + getClass().getSimpleName());
}
}

View File

@@ -0,0 +1,12 @@
package Facade.system;
class HelpSystem03 {
public HelpSystem03() {
System.out.println("Call Constructor : " + getClass().getName());
}
public void process() {
System.out.println("Call Process : " + getClass().getSimpleName());
}
}