php

漫谈oop与pop

dafenqi
2023-07-28 / 0 评论 / 21 阅读 / 正在检测是否收录...

在我们的编程生涯中,不得不面对两种编程思想oop与pop。

啥是oop?

面向对象程序设计(Object Oriented Programming) 作为一种新方法,其本质是以建立模型体现出来的抽象思维过程和面向对象的方法。模型是用来反映现实世界中事物特征的。任何一个模型都不可能反映客观事物的一切具体特征,只能对事物特征和变化规律的一种抽象,且在它所涉及的范围内更普遍、更集中、更深刻地描述客体的特征。通过建立模型而达到的抽象是人们对客体认识的深化。

啥是pop?

“面向过程”(Procedure Oriented) 是一种以过程为中心的编程思想。这些都是以什么正在发生为主要目标进行编程,不同于面向对象的是谁在受影响。与面向对象明显的不同就是封装、继承、类。简写为POP。

两者区别

1、 面向过程以过程为中心 的编程思想, 着重于做什么面向对象以事物为中心 的编程思想, 着重于谁来做

2、 面向过程适合小项目,它的执行效率高 ,毕竟是从上到下,有前后顺序依次执行,过程相对来说简单干脆, 不过程序拓展性不好,维护成本较高(通过缓存、静态化可以解决面向过程编程的执行效率问题)面向对象适合中大型项目, 它的执行过程可谓曲折,总是爱 new个对象再去实现 ,即便如此,它的 继承,封装,多态 的特性,使得 程序易拓展易维护

经典例子之把大象装进冰箱

比如,以“ 把大象装进冰箱 ”举例。

面向过程实现

面向过程实现有 三个步骤

1、打开冰箱门
2、把大象装进去
3、关上冰箱门

这就是典型的分析出问题所需的步骤,然后用函数将这些步骤一步一步的实现,使用的时候在一个一个的依次调用就可以了。

可以看出, 面向过程编程关注的主体是过程、步骤。

面向对象实现

面向对象实现也是 三个步骤

1、先找出对象,大象对象和冰箱对象
2、分析对象的功能
大象对象:大象走进冰箱
冰箱对象:冰箱门打开和关闭
3、使用大象和冰箱对象的功能,冰箱执行冰箱开门功能,然后大象执行大象走进冰箱功能,最后冰箱执行关闭冰箱功能。

可以看出, 面向对象编程关注的主体是事物、对象。

另外,在面向对象的编程中, 万物皆可对象 。 面向对象的 方法主要是把事物给对象化 ,包括其属性和行为。面向对象编程 更贴近实际生活 的思想。

总体来说 面向对象的底层还是面向过程 ,面向过程 抽象成类,然后封装,方便使用 就是面向对象,这也就解释了,为什么上面 面向对象与面向过程的实现 有这么多 相似之处,殊途同归。

0

Deprecated: strtolower(): Passing null to parameter #1 ($string) of type string is deprecated in /www/wwwroot/testblog.58heshihu.com/var/Widget/Archive.php on line 1032

评论 (0)

取消