软件设计问题请教

$扫地僧$ 2007-08-23 11:50:51
请教一个类的设计问题

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


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

//-----------------获取视图--------------------------------
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) 通过标识的不同,返回不同的对象
{

}

---
麻烦各位大侠 能告诉我这两者间的设计 对以后系统的维护过程中 都带来那些利弊关系 谢谢
...全文
208 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
ice_frank 2007-08-24
  • 打赏
  • 举报
回复
选1
kaishui_gu 2007-08-24
  • 打赏
  • 举报
回复
选2
$扫地僧$ 2007-08-23
  • 打赏
  • 举报
回复
其实我上面只是打个比方!

也正如foyuan(暴走零零漆)所说:

方案1 可以通过 方案2 把传人的标识变量改为枚举类型 在通过多个 if语句 来实现

我是想问 这两者间的设计 对以后系统的维护过程中 都带来那些利弊关系 谢谢
kaishui_gu 2007-08-23
  • 打赏
  • 举报
回复
为什么要区分视图、表、存储过程呢?
danjiewu 2007-08-23
  • 打赏
  • 举报
回复
可以两个方案都实现,又不冲突。
foyuan 2007-08-23
  • 打赏
  • 举报
回复
方案2不还得写 方案1的三个函数么 还要加if来判断

我选择方案1

如果要用方案2的话也要把int编程枚举类型的
zhqs1000 2007-08-23
  • 打赏
  • 举报
回复
利用override
fht123 2007-08-23
  • 打赏
  • 举报
回复
两者都可以,看个人风格.
lisbates27 2007-08-23
  • 打赏
  • 举报
回复
选1,也是范型的思想
qqhmitzk 2007-08-23
  • 打赏
  • 举报
回复
对于类的设计我认为:
1,通俗易懂
2,一个类中的函数之的藕合性应比较低
3,类中的一个函数只描述一个功能
4.可重用性,可扩展性,可移植性
要选的话,我选一方案
但一方案需要改进
Island_Geek 2007-08-23
  • 打赏
  • 举报
回复
first one , I like.
wuhq030710914 2007-08-23
  • 打赏
  • 举报
回复
我选一,
一个函数完成一个特定的功能即可
Uncommon 2007-08-23
  • 打赏
  • 举报
回复
对于类的设计,我的看法是
1、简单。
2、职责明确化(一个类对应一个具体职责)
3、可复用


所以。我选一

110,561

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧