實戰重構工廠模式

2021-09-10 09:16:07 字數 2901 閱讀 4780

待優化業務邏輯**

/**

* @author sunyang

* @date 2019/1/30 10:32

*/public

class

bizuser

else

if(shownumredis >=

100&& shownumredis <=

999)

else

if(shownumredis >=

1000

&& shownumredis <=

9999

)else

if(shownumredis >

9999

)else

return result;

}}

分析

從**看的出來,不同條件下,執行的邏輯是不同的,可以把這種執行邏輯抽象出來,用多型的概念來定義不同的執行方式。

/**

* 工廠模式

* 從**看的出來,不同的條件下,執行的邏輯是不同的,那麼可以把這種執行邏輯抽象出來

* 用多型的概念來定義不同的執行方式

* * @author sunyang

* @date 2019/1/30 10:51

*/public

abstract

class

abstractbizuser2

/**

* @author sunyang

* @date 2019/1/30 10:57

*/public

class

showoneexecutor

extends

abstractbizuser2

}

/**

* @author sunyang

* @date 2019/1/30 11:07

*/public

class

showtwoexecutor

extends

abstractbizuser2

}

/**

* @author sunyang

* @date 2019/1/30 11:09

*/public

class

showthreeexecutor

extends

abstractbizuser2

}

/**

* @author sunyang

* @date 2019/1/30 11:09

*/public

class

showfourexecutor

extends

abstractbizuser2

}

/**

* @author sunyang

* @date 2019/1/30 11:10

*/public

class

showotherexecutor

extends

abstractbizuser2

}

/**

* 定義乙個工廠來把需要處理邏輯給包起來

* * @author sunyang

* @date 2019/1/30 11:21

*/public

class

executo***ctory

else

if(shownumredis >=

100&& shownumredis <=

999)

else

if(shownumredis >=

1000

&& shownumredis <=

9999

)else

if(shownumredis >

9999

)else

}}

結論
/**

題外話

實戰中的**是簡單可公開的邏輯**

舉一反三,去改造看不下去的**

簡單工廠模式重構Switch語句

最近看公司的 經常看到很多的switch語句,想到如果要加case改動比較大,也比較長,違反了開閉原則,所以想著用簡單工廠重構下,方便以後的擴充套件。private void dealmessage int type 1case push response 司機上傳位置報文 2 case uploa...

實戰中使用設計模式 簡單工廠模式

1.簡單工廠模式是屬於建立型模式,又叫做靜態工廠方法模式。它的實現方式是由乙個工廠類根據傳入的引數,動態決定應該建立哪乙個產品類 這些產品類繼承自乙個父類或介面 的例項。2.簡單工廠模式由三種角色組成 3.場景 4.實現 我們將建立乙個 paymentmethod 介面和實現 paymentmeth...

抽象工廠實戰

在這個例子中主要的是建立兩個系列的產品,乙個是運算元據庫的dao系列,乙個是操作業務邏輯的manager系列。所以在此利用抽象工廠進行實現。如下 物料業務邏輯層介面 public inte ce itemmanager 物料資料訪問介面 public inte ce itemdao 抽象工廠,主要建...