我有一個用例,其中輸入是參數集(比如說A,B,C,D)和數據(比如XYZ)。根據參數(A,B,C,D),我必須處理數據(XYZ)並作出迴應。處理邏輯可以是基於參數的唯一或通用的(例如,只有在A時做#1,當A和C做#2,做B#,C和D等等#2時做#2)。我可能還需要維護處理的順序。哪種設計模式用於我的用例?
當前實現基於if-else循環。我正在尋找責任鏈,管道設計模式。但是上述任務有沒有其他合適的設計模式?
實施例使用的if-else塊:
I/P:A = {A1,A2,A3},B = {B1,B2,B3},C = {C1,C2,C3},d = {D1,D2,D3}和XYZ =「富」
if (A == A1)
{
//dosomething-A1
if (B == B1)
{
//dosomething-B1
if (C == C2)
{
//dosomething-C2
}
}
else if (B == B2)
{
//dosomething-B2
}
if (C == C2)
{
//dosomething-C2
if (D == D1)
{
//dosomething-D1
}
else if (D == D3)
{
//dosomething-D3
}
}
}
else if (A == A2)
{
//dosomething-A2
...
}
else if (A == A3)
{
//dosomething-A3
...
}
如果你要倒下,請留下一個理由。而@Joshi,我理解這個問題,但你提供的用例非常抽象。你可以提供更多細節,或者發佈迄今爲止的代碼嗎? –
我認爲downvote是因爲這是基於意見的。關於主題:我認爲我們需要更多的信息來回答這個問題。每個參數的數據處理都是連續的,還是一氣呵成?參數是否相互依賴?會有超過4個參數嗎?匿名類可以在這裏解決很多問題,不需要任何模式。 –
我認爲任何涉及設計模式(或一般設計)的討論都是基於意見的。不過,這是一個重要的討論:-) –