发信人: 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]
|
|