請教工廠方法的一個應用問題
譬如說我要生產一組產品,這組產品有一些共性,於是用一個
ProductMgr來管理共性的東西
當遇到專有的東西時
用一個工廠方法來處理
if( needSpecialProcess){
ProductCommand command1 = ProductFactory.getFactory(productId);
command1.createProduct();
}
這些沒有問題。
但是,後來發現幾種command裡面又有一些共性的操作。這時該怎麼設計呢?
現在有方案
1)沿用原來的結構,不改變。這樣就是每種command都要做一些相同的操作。
2)將共性的操作抽取到一個公共方法,如 function.doBeforeCreate(ProductCommand command)。每個Command裡再去呼叫這些方法。
3) 將共性的操作抽取到一個新類。
if( needSpecialProcess){
new CommonCommand().createProduct();
}
在CommandCommand裡,先處理共性的操作。然後再呼叫工廠方法處理專有操作。
要考慮效率問題,又要兼顧結構。該怎麼選呢?或者有更好的方案?
ProductMgr來管理共性的東西
當遇到專有的東西時
用一個工廠方法來處理
if( needSpecialProcess){
ProductCommand command1 = ProductFactory.getFactory(productId);
command1.createProduct();
}
這些沒有問題。
但是,後來發現幾種command裡面又有一些共性的操作。這時該怎麼設計呢?
現在有方案
1)沿用原來的結構,不改變。這樣就是每種command都要做一些相同的操作。
2)將共性的操作抽取到一個公共方法,如 function.doBeforeCreate(ProductCommand command)。每個Command裡再去呼叫這些方法。
3) 將共性的操作抽取到一個新類。
if( needSpecialProcess){
new CommonCommand().createProduct();
}
在CommandCommand裡,先處理共性的操作。然後再呼叫工廠方法處理專有操作。
要考慮效率問題,又要兼顧結構。該怎麼選呢?或者有更好的方案?
相關文章
- 請教一個關於工廠模式的問題模式
- 一個jboss的應用問題
- 一個模式應用問題模式
- 請問一個用jpcap資料包捕獲的問題PCA
- 請教一個cookies的問題Cookie
- 請教一個executeBatch()的問題BAT
- 請問一個java nio問題Java
- 求教一個觀察者模式應用的問題模式
- 請教一個JVM問題JVM
- 請教高手一個問題!
- 請教一個struct tag的問題Struct
- 請教一個ADAPTER的問題APT
- 請教大家一個JAVA的問題Java
- 請教一個WEB START的問題!Web
- 關於抽象工廠的一個問題?抽象
- 請問一個有關jdbc效能的問題JDBC
- 請問一個jndi連線的小問題
- 請教Banq工廠模式中的一些問題模式
- 請教:JdonFramework應用Demo程式問題Framework
- 請教各位高手一個問題
- 請教一個go切片引用的問題Go
- 請教一個物件設計的問題物件
- 求問一個 swipe 的問題,請大神們指教
- 請問一個mysql使用者管理的 問題。MySql
- 一個關於 Web 應用國際化的問題Web
- 請教jboss 多應用釋出問題
- 綜合使用抽象工廠、工廠方法的應用抽象
- 問一個小的運算問題,請高手指教!
- 請問老師一個關於命令模式的問題模式
- 請教一個多執行緒的問題執行緒
- Mr bangq請教你一個java列印的問題!Java
- 請教Banq一個Ruby架構的問題架構
- 請教各位大俠一個JavaBean的問題JavaBean
- 請教一個DAO設計模式的問題設計模式
- 請教一個檔案上傳的問題
- 請教一個timeout的實現問題
- 請教一個演算法問題演算法
- 請教一個observer設計問題。Server