谈谈面向对象的编程语言和面向过程编程语言的不同
发布网友
发布时间:2022-05-09 10:29
我来回答
共1个回答
热心网友
时间:2024-01-30 00:26
C是面向过程
C++、 JAVA是面向对象
面向对象和面向过程的区别
一个博大,一个精深.
总体而言,面向对象简单,面向过程对人员要求素质过高
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。
面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。
艾兰.库伯的《软件创新之路》中提到:
面向过程和面向对象的区别并不像人们想象得那么大
面向对象的大部分思想在面向过程中也能体现
但面向过程最大的问题(也许是唯一先天的缺陷)在于随着系统的膨胀,面向过程将无法应付,最终导致系统的崩溃
面向对象的提出正是试图解决这一软件危机
目前看来,似乎有一定成效
但仍任重道远
---------------------------------------------------------------
做一些对比来说吧:
分析 基本构件 方法 工具
---------------------------------
面向过程 基于算法 函数/过程 数据流图、伪代码... ...
面向对象 基于对象 类 UML建模... Rose,viso等
---------------------------------------------------------------
其实我始终认为,不管是面向对象,还是面向过程,都体现了一种软件重用的思想!
只不过面向过程中重用的是过程和函数,但是面向对象重用的是类,一种将数据和处理数据的过程及函数封装在一起的实体,其实面向对象中的过程和函数和面向过程中的分别不是很大,所以数据流图和伪代码还是有用的。
面向对象一个很大的好处就是数据 和方法的封装,由此面向对象的三大特性得到发挥