怎么理解“面向对象”和“面向过程”?


怎么理解“面向对象”和“面向过程”?

文章插图
首先 。我们先从编程语言的角度 。看看这两者之间的区别 。
面向过程最典型的编程语言就是C语言 。面向对象的语言则有C++、java、C#等 。
C语言中 。基本的数据类型就是变量、数组、结构体、函数 。当我们在使用这些数据类型编程时 。主要考虑的就是如何把需要处理的数据放在合适的数据类型中 。并按照事情发生的先后顺序依次调用函数 。完成业务逻辑的处理 。
而面向对象的语言中 。最重要的概念就是类 。类的实例化结果就是对象 。这类语言在设计过程中 。参考了很多现实生活中的处理模型 。如汽车是一个很抽象的物体 。但是如果说奔驰汽车、宝马汽车就很具体了 。这些汽车又有高配低配之分 。汽车可以行驶等 。
汽车的这些模型 。分别对应面向对象中的基类、派生类、属性和方法等概念 。由此可见 。在使用面向对象编程时 。对数据的合理封装是其主要核心工作 。
最后 。总结一下 。面向过程编程的核心技术是数据结构与算法;面向对象编程的核心技术是23种设计模式 。大家一定要熟练掌握!
怎么理解“面向对象”和“面向过程”?

文章插图
其他观点:
编程界有两大思想:面向对象、面向过程 。相信大家都很熟悉 。常见的面向过程的编程语言有C 。面向对象的语言有:C++、Java、C#、PHP、Python等 。大多数虽说知道这两者的概念 。但要让我们说出个所以然来 。又不知从何说起 。
面向过程(POP)
面向过程就是指分析出解决问题的步聚 。通过函数一步步的去实现 。并按顺序去调用 。整个事件都是过程驱动的 。比如:开始 -》输入数据 -》处理数据 -》循环 -》任务完成 。因此也被称为“结构化编程” 。
怎么理解“面向对象”和“面向过程”?

文章插图
1、优点:
性能上稍强于面向对象(没有创建对象的开销) 。一般注重性能开销的系统基本会用POP模式开发 。比如:单片机、嵌入式开发、Linux开发等 。
2、缺点:
代码片段过多、不易维护和扩展、不易复用 。
面向对象(OOP)
我们将构成问题的事物理解成多个“对象” 。无需关心对象内部是如何实现的 。只要了解对象在整个问题处理中所做的行为即可 。OOP有三大基本特性:继承、封装、多态 。
怎么理解“面向对象”和“面向过程”?

文章插图
1、优点:
易维护和扩展、易复用 。采用面向对象思想可以设计出低耦合的系统 。同时也增加了系统的灵活性 。
2、缺点:
调用需要创建对象 。增加系统开销 。
二者关系
严格意义上来说面向对象和面向过程只是一种编程思想 。这两者也是相辅相成的关系 。我们一般在宏观(全局)上以面向对象的思想来组织及表现事物间的复杂关系 。但在微观(局部)上还是以面向过程形式完成具体功能 。简单来说 。即使我们采用的是面向对象的编程思想来编程 。依旧也存在面向过程的思想(比如类中方法的实现) 。

其他观点:
面向过程可以用拖地类比理解
每个步骤都列出来当作一个动作 。1 。打湿拖把 。2 。拖地 。3 。拖完洗干净三个过程
而面向对象怎么理解 。事情是拖地 。怎么解决 。抽象成一个拖地机器人 。里面封装了拖地功能 。甚至封装打蜡功能 。机器人开关就好比是接口 。按下开关发一条扫地指令给对象 。对象就可以调用内部的属性和方法干活了.
【怎么理解“面向对象”和“面向过程”?】一个简单的类比 。面向过程是所有步骤都定义出来 。面向对象是把步骤封装在对象里 。生成一个对象 。就可调用内部的功能 。也可调用其他对象 。希望对你有帮助.

    推荐阅读