학교 과제를 위해 나는 전략 패턴을 구현해야하며, 질문에 따라 적절한 전략을 얻는 인터페이스와 컨텍스트 패턴을 완전히 이해하지만, 내 특정 문제를 구현하는 방법을 알아낼 것 같습니다.내 특정 문제에 대한 전략 패턴 구현
문제 :
의 (a UML-classdiagram와) 솔루션의 설계를 부여 문제 다음 해결 : 시스템이 (이것에 대한 클래스 요리사를 사용하여) 몇 가지 요리를 관리합니다. 이 요리사 중 일부는 요리 세션을 준비하기 위해 다른 요리사와 다른 것을 필요로합니다.이 방법으로 요리사는 다른 요리사를 구별하고 다른 설정을 제공 할 수 있습니다. 이 시스템은 많은 요리사와 함께 작동하는 일련의 레스토랑에서 사용됩니다. 제한된 조합의 준비를 기반으로 올바른 요리사를 구성하는 것이 중요합니다. 특정 유형의 요리사를 제거하거나 새 요리사를 추가하는 것이 매우 쉬워야합니다. 솔루션은 요리사의 prepare() 메서드를 호출 한 후에 다른 단계를 표시 할 수 있어야합니다. 몇 가지 예 : 요리사 Jeroen은 '앞치마를 두는 것'이 필요하며 대부분의 다른 요리사가하는 일이기도합니다. 그러나 기독교인은 앞치마를 입히고, 칼을 들고 고전 음악을 틀어 놓아야합니다. 그리고 요리사 인 Nini와 Leo는 맥주를 열고 하드락을 몇 개 준비해야합니다. 주의 : 일부 동작에는 다른 클래스와의 상호 작용이 필요합니다 (솔루션에 명시 적으로 포함 할 필요가 없음). 따라서 문자열 속성 '준비'를 추가하는 것만으로는 충분하지 않습니다!내 생각은 Preperation를이 텟 전략 인터페이스이며 preperations의 종류는 (여기 예를 당 : http://upload.wikimedia.org/wikipedia/commons/3/39/Strategy_Pattern_in_UML.png) ConcreteStrategies 있다는 것입니다 그리고 요리사는
당신이에 도움이 되거 수 있기를 바랍니다이 예에서 상황입니다 문제의 내 explenation을 대체하고 원래 텍스트 당신이 올바른 궤도에있어
무엇이 당신의 질문입니까? 또한, 저에게 책임의 사슬처럼 들립니다. –
그래서 디자인 패턴이 있고 적용 할 문제를 찾고 있습니다. 이것이 바로 디자인 패턴을 사용하지 말아야하는 방법입니다. 당신이 가지고 있어야하는 것은 해결해야 할 문제이며,이 문제를 우아하게 해결하는 패턴을 적용하십시오. 패턴은 코드에서 나오고, 그 반대는 아닙니다.문제에 대한 설명에서 전략 패턴이 어디에 적합한 지 알 수 없습니다. –
내 게시물에 전략 패턴이 사용되지 않습니다. Strategy Pattern (전략 패턴)이 실제로이 과제에서 해결할 문제는 무엇인지 자문 해보십시오. – FunctionR