软件开发:依赖关系的三条原则
2011-07-28 09:05
246 查看
黄国强 2004年09月16日
类与类之间依赖度越低,可复用的机会越大。而且修改起来很方便,便于重构。近来看到一本书上提到以下三条原则,感觉非常重要。由于书不在手边,故书名未写出来,内容只是表达一个意思,与原文有差异。
1 任何一个类不要从一个具体类中继承;
2 任何一个类成员不能指向一个具体类;
3 任何继承类的成员函数不得覆写父类的函数;
这几条原则给我留下深刻印象的是根据这个原则,类继承这种强依赖关系不被提倡的。考虑到现在有很多语言的多态都不用继承来实现,就更体会到满足从一个具体类继承的条件是很难的。所以大多数场合不用为好。经典的例子就是正方形类与矩形类的关系。论文很长,结论是正方形不能够从矩形继承。
类与类之间依赖度越低,可复用的机会越大。而且修改起来很方便,便于重构。近来看到一本书上提到以下三条原则,感觉非常重要。由于书不在手边,故书名未写出来,内容只是表达一个意思,与原文有差异。
1 任何一个类不要从一个具体类中继承;
2 任何一个类成员不能指向一个具体类;
3 任何继承类的成员函数不得覆写父类的函数;
这几条原则给我留下深刻印象的是根据这个原则,类继承这种强依赖关系不被提倡的。考虑到现在有很多语言的多态都不用继承来实现,就更体会到满足从一个具体类继承的条件是很难的。所以大多数场合不用为好。经典的例子就是正方形类与矩形类的关系。论文很长,结论是正方形不能够从矩形继承。
相关文章推荐
- ubuntu安装软件时:有未能满足的依赖关系
- 软件开发--依赖注入
- ubuntu安装软件时出现,无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系
- 使用对象-关系映射(ORM)系统中间件提升软件开发效率及质量
- E:无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系
- Mint Linux 安装 DotnetCore 遭遇无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系
- 7个软件开发原则 和 处理掉重复的代码
- Ubuntu16.04安装deb软件包错误(依赖关系问题-仍未被配置)解决
- 关于《敏捷软件开发:原则、模式与实践(C#版)》
- 使用对象-关系映射(ORM)系统中间件提升软件开发效率及质量
- 最近读了Robert C. Martin的《敏捷软件开发 原则、模式与实践》
- 软件开发之设计原则和模式
- 《敏捷软件开发-原则、方法与实践》-Robert C. Martin
- 敏捷软件开发:原则、模式与实践
- 毕业生的商业软件开发之路-最小权限原则
- Atitit 软件 开发 与互联网发展趋势 与一些原则 潮流就是社区化 o2o 各种服务化 xaas ##--------信息化建设的理念 1.1.兼容性(不同版本与项目兼容性有利
- 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系
- 从设计原则谈软件开发(二)
- 《敏捷软件开发-原则、模式与实践》-第七章 什么是敏捷设计
- 敏捷软件开发宣言和原则