я работаю над дизайном системы принятия решений, которая вызывает усложнять логику, потенциально мне нужно будет использовать много вложенных если/иначе,, что это правильный шаблон дизайна для усложняет принятие решений системы
Я хочу чтобы увидеть, есть ли лучший дизайн, чем может помочь мне упростить структуру системы и обеспечить определенную расширяемость для будущего улучшения.
Проблема проекта может быть Simpified как:
Мы теперь должны принимать решение для запроса, который имеет 3 типа свойств и потенциально более. Это PricePolicy (Contract/WholeSale/Retail/Discount), RequestType (покупка/продажа) и ProductType (мода/быт/игрушки).
Каждое решение основано на всех трех свойствах запроса, поскольку тип ценовой политики может измениться в будущем, и в процесс принятия решений будет добавлено больше свойств.
Таким образом, я стараюсь избегать создания большого оператора switch, который является уродливым и изощренным для будущих расширений. Такие как:
switch(ProductType) {
case Fashion:
switch(PricePolicy) {
case Contract:
if(Request == Buy) {
// making a decision.
} else {
}
}
}
}
Пожалуйста, поделитесь идеей и предложениями Спасибо.
Приветствия, Боб
Для таких систем Prolog - ваш друг – Enrique