面向对象编程原则(01)——概述
Posted 谷哥的小弟
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象编程原则(01)——概述相关的知识,希望对你有一定的参考价值。
版权声明
- 本文原创作者:谷哥的小弟
- 作者博客地址:http://blog.csdn.net/lfdfhl
参考资料
- 《大话设计模式》 作者:程杰
- 《Java设计模式》 作者:刘伟
- 《图解设计模式》 作者:结城浩
- 《重学Java设计模式》 作者:付政委
- 《Head First设计模式》作者:埃里克·弗里曼
面向对象编程原则概述
在软件产品开发过程中软件的可维护性(Maintainability)和可复用性(Reusability)是两个非常重要的用于衡量软件质量的属性。软件的可维护性是指软件能够被理解、修改、适应及扩展的难易程度;软件的可复用性是指软件能够被重复使用的难易程度。
面向对象设计的目标之一在于支持可维护性复用。一方面需要实现设计方案或者源代码的复用;另一方面要确保系统能够易于扩展和修改,具有良好的可维护性。面向对象设计原则为支持可维护性复用而诞生,这些原则蕴含在很多设计模式中,它们是从许多设计方案中总结出的指导性原则,但并不是强制性的。
面向对象设计原则也是设计模式学习的基础,每一个设计模式都符合某一个或多个面向对象设计原则。换个角度来说:面向对象设计原则是用于评价一个设计模式的使用效果的重要指标之一。通过在软件开发中使用这些原则可以提高软件的可维护性和可复用性,以便设计出兼具良好的可维护性和可复用性的软件系统,实现可维护性复用的目标。
四个原因与三个特性
可维护性较低的软件产品,通常由四个原因造成:
- 1、僵硬(Rigidity) :灵活性不够
- 2、脆弱(Fragility) :健壮性(鲁棒性)欠缺
- 3、复用率低(Immobility) :不能重用
- 4、黏度过高(Viscosity) :关联性过强
良好的系统设计应该具备如下三个性质:
- 1、可扩展性(Extensibility)
- 2、灵活性(Flexibility)
- 3、可插入性(Pluggability)
以上是关于面向对象编程原则(01)——概述的主要内容,如果未能解决你的问题,请参考以下文章