一张图带你看懂什么是面向过程和面向对象编程
两种思想的对比:
面向过程是具体的东西,而且面向过程是面向对象的基础。比如开汽车去某个地方,你就需要先有个汽车而且你需要会开车,而汽车有开车,加减速和刹车等功能,关于汽车的操作每一个都需要一个具体的过程来实现总结来说就是,面向过程是一种基础的方法,它考虑的是实际的实现。
一般情况下,面向过程是自顶向下逐步求精,其最重要的是模块化的思想方法。因此在模块化编程的时候才会有“低耦合,高内聚”的思想来提高效率。
面向对象的方法主要是把事物给对象化,包括其属性和行为。比如开汽车去某个地方,那么面向对象的操作就是:打车。是的 没错,打车就全部解决了。
当程序较小的时候,面向过程就会体现出一种优势,其程序流程十分清楚。但当程序比较大时,面向过程的流程就会变得十分复杂。而且,面向对象编程更贴近实际生活的思想。
面向过程和面向对象的本质理解
面向过程是具体化的,流程化的。解决一个问题,需要一步一步分析需要怎样,然后需要怎样,一步一步实现的。面向对象是模型化的,抽象出一个类,这是一个封闭的环境,在这个环境中有数据有解决问题的方法,你如果需要什么功能直接使用就可以了,至于是怎么实现的,你不用知道。
从代码层面来看,面向对象和面向过程的主要区别就是数据是单独存储还是与操作存储在一起。在类的里边,实现具体的功能还是需要流程化、具体化的代码去实现的,在类里还是需要具体的算法来实现的。总结来说面向对象的底层还是面向过程,面向过程抽象成类,然后封装,方便使用就是面向对象。
领取专属 10元无门槛券
私享最新 技术干货