发信人: hyenachenyao() 
整理人: leeyg(2001-06-05 22:50:06), 站内信件
 | 
 
 
前一段由于工作忙,没有阅读您的<数据库系统在面向对象的分析设计中的应用>系 列文章.这几天看了一下,觉得很有收获.
 不过,同时也产生了几个问题:
 1.在实现整体-部分结构和一般-特殊结构时,采用继承方式.
 当类与类的继承关系层次很多时,组装属性就会非常的复杂,而且在组装时,如何知 道那些类有继承关系?
 是否应该建立类与类的继承关系的数据字典?
 2.如果建立类与类的继承关系的数据字典,是否可以把数据字典看成一个类?
 3.在文章中,从感觉来看,数据库主要是关系型的.
 把父类的属性紧密组装到子类中,是否意味着把父类属性对应的数据库表与子类属 性对应的表合并了?
 如果是这样,由于父类和子类层次多了后,数据拥余如何解决?
 4.在文章中,数据库实现的是类的属性的表达方法.那么,类的服务的继承是否可以 在数据库中表示?
 还是只能在程序中实现?
 
 这几个问题不一定贴切,希望能够同您讨论.谢谢.
 面向对象方式在数据库中实现,尤其是关系型数据库,是比较难的.
 很高兴您写了这几篇文章,同时很高兴能同您进行讨论.
  -- ※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 210.72.251.208] 发信人: 3871 (3871), 信区: SystemAnalysis 标  题: Re: 可否向3871同志提几个问题? 发信站: 网易虚拟社区 (Sat Oct 16 16:11:04 1999), 站内信件
  【 在 hyenachenyao (BlueHyena) 的大作中提到: 】
 :1.在实现整体-部分结构和一般-特殊结构时,采用继承方式. 
 :当类与类的继承关系层次很多时,组装属性就会非常的复杂,而且在组装时,如何知 
 :道那些类有继承关系? 
 :是否应该建立类与类的继承关系的数据字典? 
 
 我认为没有必要去描述这种关系。类的关系是在系统分析时定下的,
 在系统的运行期,一个独立的类无需知道自己从哪里继承的,是单
 继承还是多继承,它只需知道自己有什么属性,能干什么(服务),
 尽管这些属性或方法可能是继承的。OPL中类关系的数据字典只在编
 译系统中存在,系统中是无需存在的。
 
 :2.如果建立类与类的继承关系的数据字典,是否可以把数据字典看成一个类? 
  如果要写的系统是一个编译系统,应该把数据字典(可能粒度太在)
 建成类。
 
 :3.在文章中,从感觉来看,数据库主要是关系型的. 
 :把父类的属性紧密组装到子类中,是否意味着把父类属性对应的数据库表与子类 属 
 :性对应的表合并了? 
 :如果是这样,由于父类和子类层次多了后,数据拥余如何解决? 
 
 我的文章中,觉得当父类的属性不多时或抽象程度较高时,用紧密组装。
 实际上,由于我认为数据库存贮的是系统已经实例化的对象,对象的
 属性要么是这个数据库中某字段值,要么是那个数据库的字段值,同时
 在2个数据库中都存在的对象(属性)是很少的。
 
 :4.在文章中,数据库实现的是类的属性的表达方法.那么,类的服务的继承是否可 以 
 :在数据库中表示? 
 :还是只能在程序中实现? 
 
 程序!数据库中仅仅是面向对象的一种辅助,仅是记录对象的属性。服务
 仍由最拿手的OPL来做。我的文章中有这么一段:
     "当“取出”服务根据属性所在的类,实例化出一个对象时,这个
 空对象已经具有了该类所有的一切服务,包括从父类中继承的所有服务。
 当这个类所有的属性值(包括从父类中继承的)赋值完成后,一个可跨
 越系统的运行期而存在的、系统中曾经实例化的已有的对象实体就被完
 完整整地还原出来了。"
 
 很不好意思,没把我的观点说清楚。
 
 
 这几个问题不一定贴切,希望能够同您讨论.谢谢. 
 面向对象方式在数据库中实现,尤其是关系型数据库,是比较难的. 
 很高兴您写了这几篇文章,同时很高兴能同您进行讨论. 
 
  -- ※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.104.35.251]
  | 
 
 
 |