最近看到一系列的工廠方法...想說直接以實作來了解。
但是,一些問題不是很清楚,周遭的朋友開發也沒管啥開發方式..
所以,轉而向網路上各位前輩指教,希望各位前輩指點一二。
我自己寫了一小段SampleCode,希望直接透過Code詢問會比較清楚@@
https://mega.nz/#!OIBElJ6a!_Mn1NldD2V-ZjosPEIRpcFEjW5QKZtzYNggyzu-PJBQ
主要的系統分為三塊,如圖: http://i.imgur.com/SyOOpsp.png
1.Form http://i.imgur.com/2GL7wkv.jpg
2.FactoryLib
http://i.imgur.com/WWPglb6.jpg
http://i.imgur.com/WYsyfqN.jpg
http://i.imgur.com/YNKL6WW.jpg
http://i.imgur.com/HYtzYtw.jpg
3.Log
1.最主要的Form,也是最單純的部分,只給User Keyin數值。所以,也就不引用Log.dll
2.將所有流程及處理作業都寫在此部分,因此FactoryLib會記錄Log,故引用Log.dll
3.當然就是自己寫的Log.dll 了(內容會是自己寫Log的方式...)
FactoryLib內有四個.cs
最上層為 ProcessFactory => 負責判斷需要呼叫哪個模組..
下一層為 ProcessProvide => 此為抽象Class
ProcessOfTainan => 繼承ProcessProvide 實作變數A*B
ProcessOfTaipei => 繼承ProcessProvide 實作變數A+B
問題一:
因為實際在處理作業流程的Class應該是 ProcessOfTainan 及 ProcessOfTaipei
所以,會在此New log 這個物件..
但是,Log所需要紀錄的位置,會從Form1傳入,請問我要怎麼寫會比較好??
問題二:
我有看過相關文章,如果使用Interface
可以透過反射,直接傳入Function Name,就可以呼叫該Function。
那如果使用抽象的方式呢?
問題三:
這樣的架構是否正確呢?
對於這種四層式(含Form)的方式不是很清楚,希望各位前輩指點@@