日期:2014-05-18  浏览次数:20793 次

软件设计问题请教
请教一个类的设计问题  

比方说一个读取数据库的类  
在读取数据库的内的对象时,以下有两个方案   我请问各位大侠会选什么方案,并告诉我你的理由好吗!??


方案一:(多个成员函数)

//-----------------获取视图--------------------------------
private   bool   GetViews(ref   OleDbDataReader   myDataReader)
{

}
//-----------------获取表--------------------------------
private   bool   GetTables(ref   OleDbDataReader   myDataReader)
{

}
//-----------------获取存储过程--------------------------------
private   bool   GetProcs(ref   OleDbDataReader   myDataReader)
{

}
......

方案二:一个函数
private   bool   GetProcs(int   标识量,ref   OleDbDataReader   myDataReader)   通过标识的不同,返回不同的对象
{

}

---
麻烦各位大侠   能告诉我这两者间的设计   对以后系统的维护过程中   都带来那些利弊关系   谢谢

------解决方案--------------------
利用override
------解决方案--------------------
方案2不还得写 方案1的三个函数么 还要加if来判断

我选择方案1

如果要用方案2的话也要把int编程枚举类型的
------解决方案--------------------
可以两个方案都实现,又不冲突。
------解决方案--------------------
对于类的设计,我的看法是
1、简单。
2、职责明确化(一个类对应一个具体职责)
3、可复用


所以。我选一
------解决方案--------------------
我选一,
一个函数完成一个特定的功能即可
------解决方案--------------------
first one , I like.
------解决方案--------------------
对于类的设计我认为:
1,通俗易懂
2,一个类中的函数之的藕合性应比较低
3,类中的一个函数只描述一个功能
4.可重用性,可扩展性,可移植性
要选的话,我选一方案
但一方案需要改进
------解决方案--------------------
选1,也是范型的思想
------解决方案--------------------
两者都可以,看个人风格.
------解决方案--------------------
选2
------解决方案--------------------
选1