쌤리

디자인 패턴, 스트래티지 패턴 | Patterns, Strategy Patterns 본문

카테고리 없음

디자인 패턴, 스트래티지 패턴 | Patterns, Strategy Patterns

saml2l 2020. 5. 13. 12:09
  • 디자인 패턴
    • 디자인 패턴은 객체지향 언어에서 클래스와 클래스의 메서드를 사용하는 패턴, 즉 특정 의도를 가지는 방법을 의미한다. 출처: https://nanstrong.tistory.com/263 [D의 개발공간(일하면서 공부하면서 끄적끄적)]
  • 디자인 패턴이 필요한 이유?
    • 개발 업무를 하다보면 유지 보수 시에 적용되어야하는 변경사항들이 수시로 생긴다.
    • 개발자가 또한 한명이 아닌 여러 사람과 일하는 경우가 많다
    • 이러한 상황에서 효율적인 업무를 위해서
      1. 변경사항 적용을 위한 소스코드 변경을 최소화
      2. 함께 일하는 경우를 고려해서 범용적인 코딩 스타일 적용
      3. 인수인계시 빠른 이해를 돕기 위한 직관적이고 범용적인 코드 사용
  • 스트래티지 패턴
    • 디자인 패턴의 한 종류
    • 행위를 클래스로 캡슐화해 동적으로 행위를 자유롭게 바꿀 수 있게 해주는 패턴. 출처: https://gmlwjd9405.github.io/2018/07/06/strategy-pattern.html
    • 같은 문제를 해결하는 여러 알고리즘이 클래스별로 캡슐화되어 있고, 이들이 필요할 때 교체할 수 있도록 함으로써 동일한 문제를 다른 알고리즘으로 해결할 수 있게 하는 디자인 패턴.
      • 행위(behavioral)패턴의 하나
    • 즉, 전략(strategy)을 쉽게 바꿀 수 있도록 해주는 디자인 패턴이다
      • 전략이란 어떤 목적을 달성하기 위해 일을 수행하는 방식, 규칙, 알고리즘 등

끝.

Comments