1、对于面向对象的软件系统设计来说,在支持可维护性的同时,需要提高系统的可复用性。
软件的复用可以提高软件的开发效率,提高软件质量,节约开发成本,恰当的复用还可以改善系统的可维护性。
2、单一职责原则要求在软件系统中,一个类只负责一个功能领域中的相应职责。
3、开闭原则要求一个软件实体应当对扩展开放,对修改关闭,即在不修改源代码的基础上扩展一个系统的行为。
软件的复用可以提高软件的开发效率,提高软件质量,节约开发成本,恰当的复用还可以改善系统的可维护性。
2、单一职责原则要求在软件系统中,一个类只负责一个功能领域中的相应职责。
3、开闭原则要求一个软件实体应当对扩展开放,对修改关闭,即在不修改源代码的基础上扩展一个系统的行为。
4、里氏代换原则可以通俗表述为在软件中如果能够使用基类对象,那么一定能够使用其子类对象。
5、依赖倒转原则要求抽象不应该依赖于细节,细节应该依赖于抽象;要针对接口编程,不要针对实现编程。
6、接口隔离原则要求客户端不应该依赖那些它不需要的接口,即将一些大的接口细化成一些小的接口供客户端使用。
7、合成复用原则要求复用时尽量使用对象组合,而不使用继承。
8、迪米特法则(最少知识原则)要求一个软件实体应当尽可能少的与其他实体发生相互作用。
软件的可维护性和可复用性
面向对象设计原则和设计模式也是对系统进行合理重构的指南针,重构(Refactoring)是在不改变软件现有功能的基础上,通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。