读书频道 > 网站 > 网页设计 > 大规模C++程序设计
1.6.1 IsA关系
15-04-27    下载编辑
收藏    我要投稿   

本文所属图书 > 大规模C++程序设计

《大规模C++程序设计》由世界级软件开发大师John Lakos亲笔撰写,是C++程序设计领域最有影响力的著作之一。作者结合自己多年从事大规模C++项目的开发经验,详细介绍了大规模C++程序设计涉及的一系列概念、理论、立即去当当网订购

假设一个Message是一种String,也就是说,Message类型的对象可以用在String对象所需要的任何地方。


 

正如我们从图1-16a的定义中可以看到的,类Message继承了String类,在图1-16b中用一个箭头表示这种关系:



箭头的方向是很重要的,它指向隐含依赖的方向。类D依赖类B,因为类D由类B派生而来,类B必须先出现,使得类D把类B命名为一个基类:


 

你常常会看到箭头指向相反的方向,这可能会让人费解。箭头显示了用标签表示的两个实体间的一种不对称关系(在此例中是“IsA”)。如果用其他方式画箭头,从逻辑上讲我们不得不将关系名字改成别的,例如“派生(Derives)”或“是…的基类(Is-A-Base-Class-Of)”:


 

这种可替代的符号不太受欢迎,因为箭头所指的方向与隐含依赖的方向相反。

因为物理依赖分析对于好的设计是必不可少的,所以我们采用使用IsA标签和指向隐含依赖方向的箭头的符号。图1-17中提供的继承符号的最后一个图是用经典形状示例表示的。

点击复制链接 与好友分享!回本站首页
分享到: 更多
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.3 功能
下一篇:1.5 小结
相关文章
图文推荐
JavaScript网页动画设
1.9 响应式
1.8 登陆页式
1.7 主题式
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做最好的IT技术学习网站