我有一個情況(僞代碼):決策設計模式幫助
Action a;
Object o;
if(objectIsPartOfGroup(o, "Group1"))
a = treatCaseGroup1();
if(a != indecisive)
return a;
if(objectIsPartOfGroup(o, "Group2"))
a = treatCaseGroup2();
if(a != indecisive)
return a;
if(objectIsPartOfGroup(o, "Group3"))
a = treatCaseGroup3();
if(a != indecisive)
return a;
.
.
.
,我在想,如果有這種情況適用的模式,這樣我就不必重複「如果(a!=優柔寡斷)返回a;「檢查每一步後?我發現重複這個代碼是不是很專業?它增加了很多代碼行,完全沒有幫助清晰,因此我覺得它很糟糕。
編輯:一個對象可以是group1和group2以及group3等的一部分......所以說一個對象是group1的一部分,並且該動作是未決定的,因爲它也是group2的一部分,它將被再次處理並且再次,直到所有組都得到了治療。最後,結果也可能是不明確的!
感謝您的幫助!
戴夫
謝謝,這將工作!我會等待看看是否有其他想法出現 – 2010-06-25 20:19:09