Programing/Java

전략 패턴 (Strategy Pattern)

BUST 2018. 8. 4. 20:28

전략 패턴 (Strategy Pattern)

  • 특정한 계열의 알고리즘들을 정의하고
  • 각 알고리즘을 캡슐화하며
  • 이 알고리즘들을 해당 계열 안에서 상호 교체가 가능하게 만든다.

UML


Class Diagram



활용

    • 상품 구매시 포인트를 적립해주는 시스템이라고 할때 상품의 카테고리마다 포인터의 적립 계산 규칙이 다르게 된다. 포인터를 계산을 하는 부분을 전략  패턴을 적용해서 활용할수 있다.
    • 상황에 따라 비즈니스로직이 변하는 부분, 외부 설정 (Config) 등에 따라 비즈니스 로직이 달라지는 부분
    • Interface를 이용하는 방법, java 8 이상에서는 람다 함수(Functional Inteface)를 이용할수도 있다.


Reference


'Programing > Java' 카테고리의 다른 글

Java Generic (제너릭)  (0) 2018.08.14
GC overhead limit exceeded  (0) 2018.08.10
Rule Engine  (0) 2018.08.04
Adapter Pattern  (0) 2018.08.01
Apache HttpClient Example  (0) 2018.07.29