软件设计问题请教
请教一个类的设计问题      
 比方说一个读取数据库的类    
 在读取数据库的内的对象时,以下有两个方案   我请问各位大侠会选什么方案,并告诉我你的理由好吗!??     
 方案一:(多个成员函数)   
 //-----------------获取视图-------------------------------- 
 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