0
我用laravel完成了一些小應用程序,它可以工作,但我有一些意大利麪條代碼。我想問你的幫助。我對代碼模式有一些理論,但我不知道如何在我的情況下實現它們。我該如何重構我的代碼(laravel,OOP)
最奇怪的部分:我輸入的數據應該逐步分析,需要採取一些行動。例如我有一個輸入參數數組
$array = ['param1','param2','param3', ..., 'paramN']
我需要分析它從param1 paramN並採取一些行動。代碼結構如下:
if($array['param1'] == 'X') {
some action
} else { return ....}
if($array['param2'] == 'Y') {
some action
} else {
if($array['param3'] == 'Z') {
return ....
} else { return ....}
}
此代碼包括使用了一些外牆,驗證在if
塊,但if
的個數爲可怕。但這是商業邏輯。
也許你可以給我一個想法,我可以通過哪種方式重組我的代碼,使其更清晰?
謝謝你的快速回復! 如果我需要返回true或false,這個邏輯很好。但有時我需要將消息返回給用戶。一些參數的處理取決於之前處理其他一些參數的結果。恐怕這種做法不適合我。或者我錯了? –
爲了更好地理解收藏,請看看adam的課程,它對收藏太好了,並且適合所有類型的需求。 https://adamwathan.me/refactoring-to-collections/ –
好的,非常感謝你! –