java Facade pattern 실습해보기
오늘은 Facade pattern을 java로 실습해보았습니다.
퍼사드 패턴은 다수의 패키지와 퍼사드, 클라이언트로 구성되며, Facade는 “건물의 정면”을 의미한다고 합니다.
코드
package system;
class COM_1 {
public void RaidCOM1() {
System.out.println("booting com1...");
}
}
우선 예시로 1번 컴퓨터라고 언급해두고 메소드를 작성합니다.
package system;
class COM_2 {
public void RaidCOM2() {
System.out.println("booting com2...");
}
}
2번째 컴퓨터도 언급하면서 메소드를 작성합니다.
package system;
class COM_3 {
public void RaidCOM3() {
System.out.println("booting com3...");
}
}
3번째 컴퓨터도 언급하면서 메소드를 작성합니다.
package system;
public class Facade {
public Facade() {
System.out.println("calling facade");
}
COM_1 com1 = new COM_1();
COM_2 com2 = new COM_2();
COM_3 com3 = new COM_3();
public void boot() {
com1.RaidCOM1();
com2.RaidCOM2();
com3.RaidCOM3();
}
}
가장 중요한 퍼사드 클래스에서 각자의 컴퓨터 클래스에 대한 객체를 만들어줍니다.
이로서 퍼사드 패턴의 주요 클래스까지 작성되었습니다.
package facade;
import system.Facade;
public class Main {
public static void main(String[] args) {
Facade test = new Facade();
test.boot();
}
}
클라이언트 코드로는 아무리 시스템쪽에 코드가 추가된다고 해도 변화가 거의 없습니다.
단지 퍼사드 객체를 불러와서 주요 메소드만 실행하면 됩니다.
Written on February 14, 2018