Interface Segregation Principle (ISP) - OO设计的接口分隔原则---类设计原则
摘要: Clients should not be forced to depend upon interfaces that they do not use.
不能强迫用户去依赖那些他们不使用的接口。换句话说,使用多个专门的接口比使用单一的总接口总要好。
它包含了2层意思:
- 接口的设计原则:接口的设计应该遵循最小接口原则,不要把用户不使用的方法塞进同一个接口里。
如果一个接口的方法没有被使用到,则说明该接口过胖,应该将其分割成几个功能专一的接口。
- 接口的依赖(继承)原则:如果一个接口a依赖(继承)另一个接口b,则接口a相当于继承了接口b的方法,那么继承了接口b后的接口a也应该遵循上述原则:不应该包含用户不使用的方法。
反之,则说明接口a被b给污染了,应该重新设计它们的关系。
阅读全文
posted @
2009-03-28 14:17 chunkyo 阅读(597) |
评论 (0) 编辑
The Open-Closed Principle (OCP) - OO设计的开闭原则---类设计原则
摘要: Software entities (classes, modules, function, etc.) should be open for extension, but closed for modification.
软件实体(模块,类,方法等)应该对扩展开放,对修改关闭。
阅读全文
posted @
2009-03-28 14:15 chunkyo 阅读(465) |
评论 (0) 编辑