首页 > 代码库 > 面向对象与面向过程区别

面向对象与面向过程区别

面向对象是以事物为中心的编程思想,把构建问题事务分解成各个对象,建立对象的目的是为了描述某个事物在整个解决问题的步骤中的行为;

面向过程是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用时依次调用就可以了;

区别:

面向对象程序设计,往往是从问题的一部分着手,一点一点地构建出整个程序。面向对象设计以数据为中心,类作为表现数据的工具,成为划分程序的基本单位;面向对象是一个抽象度更高的编程方法,它主要是集中于解决问题,目标是使模块的抽象度更高,可复用性更好,采取空间换时间的策略方式,一般面向对象过程是从下往上的开发过程,相对于面向过程来说,比较容易维护、复用和扩展;

面向过程程序设计,强调的是步骤、流程化的设计方式,它考虑的是实际的实现、模块化的思想方法,采取时间换空间的策略方式,一般面向过程是从上往下的开发过程;相对于面向对象来说,减少调用时的实例化,性能比更高,常见于嵌入式开发、Linux/Unix等;

面向对象三大特征:

1.封装

封装是指将数据与具体操作的实现代码放对象内部,外部只能通过接口使用该对象;程序在使用对象过程中,并不需要关系对象的数据结构细节以及实现操作的方式,这样在一定程度上保证了系统的安全性;

2.继承

继承主要是用于代码的复用,涉及的公用代码部分可以在一个类中提供,其他类只需继承即可复用;

3.多态

多态是指在继承体系中,所有派生类都从基类继承接口,但由于每个派生类都是独立的实体,因此有不同的效果响应,需要通过扩展代码模块,实现接口重用;

总的来说:封装隐藏实现细节同时包含私有成员,使得代码模块化并增加安全指数;继承可以扩展已存在的模块,目的是为了代码重用;多态则是为了保证类在继承和派生时,同体系内的任何类的实例被正确调用,实现了接口重用;

 

面向对象与面向过程区别