반응형 고프3 Strategy Pattern, 전략 패턴 전략 패턴이란?우리가 슈퍼를 갈 때 버스 타고 가거나, 걸어가거나, 자전거를 타고 가는 등의 여러 가지 방법이 있다.이러한 방법으로 갈때의 길을 미리미리 알아두고 그때그때 끌리는 것으로 가곤 한다.이처럼 프로그래밍에서도 여러가지 방법을 구현해 놓고 클라이언트가 런타임 시기에 알맞은 전략을 사용할 수 있도록 하는 것이 바로 전략 패턴이다. 전략 패턴을 사용했을 때의 장점코드 중복을 줄일 수 있다.기존 코드없이 새로운 전략을 추가할 수 있다.런타임 시에 전략을 선택할 수 있다. 언제 전략 패턴을 고려해야 하는가?여러 전략 중 한 가지의 전략을 선택해야 할 때전략 알고리즘을 자주 변경 해야 할 때상태 패턴을 사용했을 때의 단점전략이 많아지면 코드가 매우 많아질 수 있다는 단점 (복잡도 상승)클라이언트에서 전략.. 2024. 10. 17. Mediator Pattern, 중재자 패턴 중재자 패턴이란? 객체들 간의 상호작용을 중재하는 패턴이다. 객체들끼리 직접 통신하는 방식이 아닌 중재자를 통해서 상호작용하도록 하는 방식이다. 항공기 관제탑을 보면 이해할 수 있다. 비행기끼리 통신을 할 수는 있지만 모든 통신을 각자 하게 되면 통신을 받지 못하는 비행기도 생기고, 통신이 매우 난잡해질 것이다. 그래서 모든 비행기들은 관제탑을 통해서 통신을 하면서 조율을 하게 된다. 중재자 패턴을 왜 사용해야 하는가? 객체 간의 결합도를 낮춰준다. 새로운 객체들을 도입할 수 있다. 단일책임원칙을 지켜 유지보수와 재사용을 쉽도록 만든다. 패턴을 언제 사용해야 하는가? 객체들이 서로 복잡하고 강하게 결합되어 있는 경우 객체들간 직접적인 상호작용이 코드를 복잡하게 만들어 유지보수가 어려운 경우 문제점 중재자.. 2024. 3. 7. 디자인 패턴 (Design patterns) GoF의 디자인 패턴(개정판)객체지향 소프트웨어를 설계할 때 겪는 문제들에 대한 해결책을 집대성하여 제시하는 『GoF의 디자인 패턴』. 이 책은 디자인 패턴이 무엇인지, 패턴이 어떻게 객체지향 프트웨어 설계에 어떻게 도움을 주는지, 실제 디자인 패턴은 어떻게 되는가 등에 관하여 정리한 내용들을 수록하고 있다.저자에릭 감마, 리처드 헬름, 랄프 존슨, 존 블리시디스출판Pearson출판일2011.11.01디자인 패턴은 GoF(4인의 갱)으로도 알려진 Erich Gamma(에리히 감마), Richard Helm(리처드 헬름), Ralph Johnson(랄프 존슨), John Vlissides(존 블리시데스)이 1994년 출판한 "Design Patterns: Elements of Reusable Object-.. 2023. 2. 3. 이전 1 다음 반응형