设计模式与面向对象设计原则
文章目录 一、分解与抽象 1、分解-分而治之 2、抽象-面向对象 二、设计模式基本原则 1、依赖倒置原则(DIP) 2、开放封闭原则(OCP) 3、单一职责原则(SRP) 4、里氏替换原则(LSP) 5、接口隔离原则(ISP) 6、优先使用对象组合,而不是类继承 7、封装变化点 8、针对接口编程,而不是针对实现编程 使用设计模式是为了可重用代码 ,让代码更容易被他人理解,保证代码可靠性,设计模式使代码编制真正工程化。 一、分解与抽象 1、分解-分而治之 人们面对复杂性有一个常见的做法:即分而治之, 将大问题分解为多个小问题,将复杂问题分解为多个简单问题 。其思想我们在数据结构中有提及。分解主要用于结构化设计思维:像C语言之类,当然我们在C++面向对象中也可以使用,但是我们尽可能使用抽象思想。 class Point { public : int x ; int y ; } ; class Line { public : Point start ; Point end ; Line ( const Point & start , const Point & end ) { this - > start = start ; this - > end = end ; } } ; class Rect { public : Point leftUp ; int width ;