最近看到一系列的工厂方法...想说直接以实作来了解。
但是,一些问题不是很清楚,周遭的朋友开发也没管啥开发方式..
所以,转而向网络上各位前辈指教,希望各位前辈指点一二。
我自己写了一小段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)的方式不是很清楚,希望各位前辈指点@@