浅谈面向过程和面向对象编程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fubo1990/article/details/82860964

面向过程和面向对象都是编程思想。

1.面向过程:面向过程是一种以过程为中心的编程思想(考虑的是实际的实现)。面向过程解决一个问题,要把问题步骤化,过程化。一般的面向过程是从上往下步步求精,所以面向过程最重要的是模块化的思想方法。

eg:比如汽车启动,面向过程会把汽车启动步骤化,过程化,首先给汽车加好油,其次给汽车启动电源按钮,最后启动汽车。

2.面向对象:面向对象是一种以对象为中心的编程思想。它把问题空间中涉及的事物抽象成类。并把具体的实现封装到类中。整个解空间都是通过类互相发送信息。完成问题空间对应的问题。

eg:同样是汽车启动。面向对象会把汽车启动这个问题中涉及的汽车抽象成一个类。然后把具体的实现封装成汽车的一个行为及启动。至于具体的行为实现已不再属于面向对象思想,而更接近与面向过程。

3.面向过程编程的基本上都是面向过程的编程思想进行编程。把问题步骤化,然后用代码至顶向下依依执行实现。

4.面向对象编程我认为主要思想是面向对象,但是系统中还是会有很多具体的行为实现要用到面向过程思想。

eg:现在好多系统的登陆功能。对于整个系统登陆功能是用户类的一个行为,这个用户类就是面向对象思想抽象出来了。但是登陆行为的具体实现还是要通过面向过程来实现,你的一步一步对用户属性进行判断,最后才能给出一个能否成功登陆。

5.面向过程编程的性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机、嵌入式开发、 Linux/Unix等一般采用面向过程开发,性能是最重要的因素。缺点:没有面向对象易维护、易复用、易扩展

6.面向对象编程性能要比面向过程编程的差。但是代码的复用和可移植性和可维护性都要远远高于面向过程。因此现在大型的软件开发都倾向于使用面向对象。比如火热很久的JAVA。

猜你喜欢

转载自blog.csdn.net/fubo1990/article/details/82860964