问题

퍼사드(Facade) 패턴은 시스템의 복잡성을 숨기고 편하고 간단한 인터페이스를 클라이언트에게 제공하는 디자인 패턴이다.
<문제>

위와 같이 Subsystem인 Wash, Rinse, Dry 클래스를 각각 만들고, 해당 Subsystem들을 관리하여 간단한 인터페이스를 제공하는 퍼사드인 WashingMachine 클래스를 만들어 제출하시오.
각 클래스의 세부 내용은 아래와 같다.
[Wash]
pouring_water(): "pouring water" 출력
add_detergent(): "add detergent" 출력
spinning(): "spinning" 출력
[Rinse]
pouring_water(): "pouring water" 출력
rinse(): "rinse" 출력
drain_water(): "drain_water" 출력
[Dry]
spinning(): "spinning" 출력
drain_water(): "drain_water" 출력
[WashingMachine]
WashingMachine(): Wash, Rinse, Dry의 인스턴스 wash, rinse, dry 생성
washing():
wash의 pouring_water(), add_detergent(), spinning() 한 번씩 호출
rinse의 pouring_water(), rinse(), drain_water() 세 번씩 호출
dry의 spinning(), drain_water() 한 번씩 호출
提示
来源
klee