面向对象的设计原则

面向对象的五大原则:

1.单一职责,Single Responsibility  Princeple, SRP。

1.1 两个含义:一个是避免相同的职责分散到不同的类中,另一个是避免一个类继承太多的职责

1.2 根据业务流程,把业务对象提炼出来。如果业务流程太复杂,就把这个业务分离为多个单一业务对象。

1.3 职责的分类需要注意。有业务职责,还要有脱离业务的抽象职责,从认识业务到抽象算法是一个层层递进的过程。就好比命令模式中的顾客,服务员和厨师的职责,作为老板要规划好各个职员的职责范围。

2.接口脱离原则。

2.1 接口隔离原则(Interface Segregation Principle,ISP)

2.2 减少接口中的污染

3.开放-封闭原则(Open-Close Principle,OCP)

Open:模块的行为必须是开放的、支持扩展

Closed: 在对模块进行扩展时,不应该影响或大规模的影响已有的程序模块

Note:How?

3.1 在设计方面充分应用‘抽象’和‘封装’的思想

3.2 在系统功能编程实现方面应用面向接口的编程

你可能感兴趣的:(面向对象的设计原则)