아는 만큼 보인다/Design Pattern

전략 패턴 (using Interface)

eyevsky 2012. 5. 18. 15:18

"어떤 클래스가 여러 구현클래스를 갖는 어떤 Interface를 사용한다."


변하지 않는 클래스가..

변하는 부분에 대한 메소드를 선언만하고 있는 인터페이스를 사용하고

해당 인터페이스에 대입될 구현 클래스는 그때 그때 상황/전략에 따라 결정된다.  



                   (생성)                                                                 (사용)

  [Client] ----------->  [Context/Template/변하지 않는 부분] ------------> [Interface]

     |                                                                                           |

     |                                                                               -----------------

     |       (생성/ Context에 주입)                                        |                        |

      ---------------------------------------> [Implement/변하는부분]      [Implement]