Loading... 在我们的编程生涯中,不得不面对两种编程思想oop与pop。 ## 啥是oop? **面向对象程序设计(Object Oriented Programming)** 作为一种新方法,其本质是以建立模型体现出来的抽象思维过程和面向对象的方法。模型是用来反映现实世界中事物特征的。任何一个模型都不可能反映客观事物的一切具体特征,只能对事物特征和变化规律的一种抽象,且在它所涉及的范围内更普遍、更集中、更深刻地描述客体的特征。通过建立模型而达到的抽象是人们对客体认识的深化。 ## 啥是pop? **“面向过程”(Procedure Oriented)** 是一种以过程为中心的编程思想。这些都是以什么正在发生为主要目标进行编程,不同于面向对象的是谁在受影响。与面向对象明显的不同就是封装、继承、类。简写为POP。 ## 两者区别 1、 **面向过程** 是 **以过程为中心** 的编程思想, **着重于做什么** ; **面向对象** 是 **以事物为中心** 的编程思想, **着重于谁来做** 。 2、 **面向过程适合小项目,它的执行效率高** ,毕竟是从上到下,有前后顺序依次执行,过程相对来说简单干脆, **不过程序拓展性不好,维护成本较高(通过缓存、静态化可以解决面向过程编程的执行效率问题)** ; **面向对象适合中大型项目,** 它的执行过程可谓曲折,总是爱 **new个对象再去实现** ,即便如此,它的 **继承,封装,多态** 的特性,使得 **程序易拓展易维护** 。 ## 经典例子之把大象装进冰箱 比如,以“ **把大象装进冰箱** ”举例。 ### 面向过程实现 面向过程实现有 **三个步骤** : > 1、打开冰箱门 > 2、把大象装进去 > 3、关上冰箱门 这就是典型的分析出问题所需的步骤,然后用函数将这些步骤一步一步的实现,使用的时候在一个一个的依次调用就可以了。 可以看出, **面向过程编程关注的主体是过程、步骤。** ### 面向对象实现 面向对象实现也是 **三个步骤** : > 1、先找出对象,大象对象和冰箱对象 > 2、分析对象的功能 > 大象对象:大象走进冰箱 > 冰箱对象:冰箱门打开和关闭 > 3、使用大象和冰箱对象的功能,冰箱执行冰箱开门功能,然后大象执行大象走进冰箱功能,最后冰箱执行关闭冰箱功能。 可以看出, **面向对象编程关注的主体是事物、对象。** 另外,在面向对象的编程中, **万物皆可对象** 。 面向对象的 **方法主要是把事物给对象化** ,包括其属性和行为。面向对象编程 **更贴近实际生活** 的思想。 总体来说 **面向对象的底层还是面向过程** ,面向过程 **抽象成类,然后封装,方便使用** 就是面向对象,这也就解释了,为什么上面 **面向对象与面向过程的实现** 有这么多 **相似之处,殊途同归。** 最后修改:2023 年 07 月 30 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏