面向过程
倾向于我们做一件事的流程,先做什么,然后做什么,最后做什么。更接近于机器的实际计算模型。
面向对象(Object-Oriented)
倾向于建立一个对象模型,它能够近似的反映应用领域内的实体之间的关系,其本质是更接近于一种人类认知事物所采用的哲学观的计算模型。
在OO中,对象作为计算主体,拥有自己的名称,状态以及接受外界消息的接口。在对象模型中,产生新对象,旧对象销毁,发送消息,响应消息就构成OO计算模型的根本。
然而CPU并不理解对象和类,它依然在执着的先执行第一行代码,然后第二行…………所以它的执行过程依然是程序化的。
面向对象:
举个例子,盖一座大楼,你想到的是楼怎么盖,哪里要有柱子,哪里要有梁,哪里楼梯等等(这就是面向对象),至于柱子该怎么建,用什么建,方的圆的,等等,这就是面向过程。
用面向对象思考问题更符合我们人的思考方式。
其实我们人现实生活中都是在面向对象。比如:去饭店吃饭,你只要说明吃什么就可以了,有必要还了解这个菜是怎么做的,是哪里来的,怎么去种这个菜吗?
面向对象也可以说是从宏观方面思考问题,而面向过程可以说是从细节招收思考问题。在面向对象中,也存在面向过程。
面向过程编程实际上就是将一个程序要实现的功能分解为一系列的一步骤,这些步骤在分解,递归下去直到你能用函数容易实现这个步骤为止,然后从下往上,高层次的步骤由低层次的步骤组装,直到实现整个程序的功能。面向过程可以认为是一种算法分解。
面向对象编程则是将一个程序的功能分派给一系列对象去完成,然后这些对象在分解,直到你能容易实现对象为止,然后这些对象相互协作实现了程序的功能。程序中的每个对象有自己的状态和行为,具有一定的工作能力。面向对象的一个重要方面就是去描述对象,以及他们之间的关系。对象之间有的对象具有共同属性和行为,这些共性我们通过类来描述(抽象和封装),然而不同类之间也有一定的相似,这时我们通过基类来描述这些类的共性(继承),然而即使具有相同的行为,不同对象具体的行为方式也可能不同,这时我们在基类中使用虚函数来描述这种差异(多态)。有的对象是作为其他的一部分存在,这时我们将这个对象作为其他对象的类的成员变量来描述(组合和聚合)。
这大概就是区别了。
面向对象的思维我们日常生活就在使用。
例如考虑汽车的制造:
如果你讲汽车的制造看做是一系列工序,那么你用的思维就是面向过程的;如果你将汽车的制造看做是一台台机器人相互协作的过程,那你用的就是面向对象思维了。
BASIC、FORTRAN、C、SQL都是面向过程的程序设计语言。
面向过程的程序设计语言是一种用于编写计算机程序的语言,它以过程(也称为函数或子程序)为基本单位,通过将程序划分为一个个独立的过程来解决问题。面向过程的程序设计语言的优点是结构清晰,容易理解和维护,适合编写大型复杂的程序。
BASIC是一种流行的面向过程的程序设计语言,它的名字是由"Beginners' All-purpose Symbolic Instruction Code"缩写而成,意思是"初学者的通用符号指令代码"。它的语法简单易懂,适合初学者学习和使用。
FORTRAN是一种老牌的面向过程的程序设计语言,它的名字是由"FORmula TRANslation"缩写而成,意思是"公式翻译"。它被广泛应用于科学和工程领域,用于编写复杂的数学模型和算法。
C是一种流行的面向过程的程序设计语言,它具有高效、灵活和可移植性的特点。它受到了BAS
区别: 面向对象 注重对数据的使用。试图把数据和对其的 *** 作封装在一起(类),并且尝试去自动处理一些不同的函数的调用工作(多态,重载等),以减轻对函数的依赖。面向过程 则注重对函数(功能模块)的应用,这些年也有一些面向函数的语言开始复苏(如F#)也可以看出,面向的重点不同,也各有领域和优点。联系:联系其实在不同中就已经可以看到。面向对象只是将数据和函数“打包”,并记入了一些 自动判断并调用“函数”的功能。所以,面向对象也是建立在函数的基础上,只是减弱了 开发人员对函数的依赖度,将重点转向数据。
面向对象和面向过程都是编程思想,分别以对象和过程为主要目标进行编程。
1、面向对象:面向对象(Object Oriented)是一种软件开发方法。Object Oriented的概念和应用已经超越了编程和软件开发。面向对象是一种理解和抽象现实世界的方法。它是计算机编程技术发展的产物。
2、面向过程:面向过程(Procedure Oriented)是一种以过程为中心的编程思想。面向过程都是以正在发生的过程为主要目标进行编程,与面向对象明显的不同就是封装、继承、类。
扩展资料:
面向对象和面向过程的区别:
1、分析问题方式的不同:
面向过程是分析解决问题所需的步骤,然后使用函数逐步实现这些步骤,使用时一个接一个。
面向对象是将问题事务分解为各种对象。对象的建立不是为了完成一个步骤,而是为了描述一个事物在解决问题的整个过程中的行为。
2、解决问题的方法的不同:
面向过程其实是最为实际的一种思考方式,就算是面向对象的方法也是含有面向过程的思想。可以说面向过程是一种基础的方法。它考虑的是实际地实现。一般的面向过程是从上往下步步求精,所以面向过程最重要的是模块化的思想方法。
对比面向过程,面向对象的方法主要是把事物给对象化,对象包括属性与行为。当程序规模不是很大时,面向过程的方法还会体现出一种优势。
参考资料来源:百度百科-面向对象
参考资料来源:百度百科-面向过程
以上就是关于关于程序语言面向过程和面向对象的理解全部的内容,包括:关于程序语言面向过程和面向对象的理解、程序设计 面向对象和面向过程、BASIC、FORTRAN、C、SQL都属于面向过程的程序设计语言等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)