[OOAD]是数据库设计,还是类图设计?

       OOAD总遇到一些尴尬的时候:在完成需求分析之后,系统需要为类建模,也需要为数据库设计。先做哪一个?

       非常建议先设计类。虽然现在面向对象数据库还没有完全实现,但是目前,根据类图的字段转化成关系数据库,比通过E-R图中实体集转化为类容易。纯属个人意见。

       把继承问题在类设计中解决,注意力集中在识别类的在系统中角色。主键,外键等联系留到数据库设计。

       带有继承关系的类图转化为关系数据库常有两种方法。

      A 如果子类特别属性少,种类多,建议与父类写在同一个表格中。在表格中添加各个子类特别属性,没有其属性用NULL填补即可。

      B 如果子类特别属性非常多,种类少。父类公共属性写一个表,利用主键和外键进行对子类特别属性存储表进行联系。

      如果子类特别属性多,种类也多。那是类设计存在问题。或者说,系统太庞大,过分使用继承,使继承深度太大。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值