目录
POP(procedure oriented programming)
是什么
POP即面向过程,是一种编程思想,顾名思义这种编程思想以过程为中心,强调的是功能。我们将代码要解决的问题进行分析,得到要解决问题所需的步骤,调用函数实现这些步骤。
优点
性能高,早期计算机配置低,内存小,面向过程是一个很好的编程思想。
缺点
不方便维护,复用,扩展;
OOP(object oriented programming)
是什么
OOP即面向对象,是一种以对象为中心的编程思想。它将数据与对数据的操作看做一个整体即对象。它具有三大特征:继承,封装,多态,这些特征都使得代码更加模块化,对象化。
优点
使得代码高复用,低耦合,更易于维护和扩展
缺点
相较POP而言性能低
AOP(Aspect-Oriented Programming)
是什么
AOP即面向方(切)面,以处理过程中的某个方面为中心,使得整个过程的耦合性变低。具体来说就是将一个业务逻辑中相同的部分提取出来,需要用时插入使用即可
优点
实现了代码的复用,处理过程代码的各部分间的耦合度降低
OOP与POP之间的关系
联系
两者都是最基础的编程思想,处于方法体系的底层。OOP某种程度而言还保留了POP的特性,只不过侧重点不同。
区别
POP侧重于过程细节,而OOP则注重对象整体,POP的性能比OOP高,而OOP的代码耦合性和复用性比POP高,它比POP更加易于维护和扩展。
OOP与AOP之间的关系
联系
AOP类似于是对OOP的补充,二者都不可替代
区别
OOP是一种纵向的操作,而AOP是一种横向的操作。OOP是将业务过程中的数据及其对应操作封装,将功能垂直划分为不同的类,而AOP则是将业务逻辑中通用的部分提取为一个通用的类,横向切入多个纵向模块的业务逻辑代码中。