作者iorice (麋鹿)
看板C_Sharp
标题[问题] dll呼叫问题
时间Sun Jan 16 19:23:17 2011
小弟目前练习 Viusual studio C#, 在撰写时有用到加入 dll参考,
虽然功能是没问题, 但感觉写法不是很 smart,
所以想请教是否有更好的写作方式
我有好几个 dll档(ex: lib1 lib2.....lib10),
每个 dll都有如下同样名称的 class
public class Message_Show
{
public List<string> show()
{
List<string> msg = new List<string>();
....
return (msg);
}
}
我在主程式将那些 dll 加入参考
using lib1
...
using lib10
之後在程式中使用时 必需依照状况去判断去使用哪个名称空间的 Message_Show
if ( i == 0 )
{
lib0.Message_Show msg = new lib0.Message_Show();
...
}
...
else if ( i == 10)
{
lib10.Message_Show msg = new lib10.Message_Show();
...
}
虽然这样是可以达到目的, 但是这似乎不是 C# 的精神,
如果有数十甚至上百个 dll 档, 每个 dll 档又有好几个 class,
那当我主程式需要呼叫 dll 档的某个方法时, 都要做一长串的判断,
在设计和维护上并不是个好的撰写方式,
不知在这方面有什麽好的方式可以避免这种问题的发生?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.250.221.213
1F:→ deuter:如果这些class都继承同一个base class 可以用factory 01/17 01:39
2F:→ deuter:Message_ShowBase c = MessageShowFactory.Create(i); 01/17 01:40
3F:推 andymai:推楼上的Factory Pattern~颠覆依赖守则... 01/17 03:58