C#/GoF 디자인패턴

[GoF]23.전략 패턴(Strategy Pattern)

공부를하자 2023. 12. 19. 21:34

1.정의

-문제해결에 사용하는 여러 알고리즘을 객체화하여 사용할 때마다 알고리즘 객체를 바꿈으로써 문제해결에 있어 보다 나은 유연성을 제공할 있는 패턴.

 

2.다이어그램

 

-Picture클래스는 사진에 관한 속성을 가지고 있는 객체.

-IView 인터페이스는 사진의 정보를 보여주는  View기능을 약속하여 파생 클래스에서

 받은 실질적인 기능을

-.SimpleViewer,VerifyViewer 클래스 들은 IView 인터페이스에서 약속한 기능을

실질 구현한다.

- PictureCollection 클래스 사진 객체들의 리스트를 가지고 IView들의 가지고 현재  Iview 선택하여 사진의 속성을 보여준다.

3.구현

1.Picture클래스

2.IViewer 인터페이스

3.SimpleViewer,VerifyViewer 클래스

 

4.PictureCollection 클래스

 

5.테스트