面向对象与面向过程的本质的区别
1.面向对象的特点
在了解面向对象之前,首先要知道什么是对象,对象就是现实世界存在的任何事务都可以称之为对象,有着自己独特的个性。
ECMA关于对象的定义是:”无序属性的集合,其属性可以包含基本值、对象或者函数。“对象的每个属性或方法都有一个名字,而每个名字都映射到一个值。
面向对象设计是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。
面向对象的特征基本就是:封装,继承,多态
2.面向过程的特点
什么是过程,我认为过程就是步骤,是解决问题的按部就班
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。
3.两者之间的区别
面向过程:关注的是过程中的每一个环节,分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。面向过程实现的快但后期维护或增加功能很不方便
面向对象:是以功能来划分问题,而不是步骤。最主要的特征就是:封装,继承和多态,面向对象不是一种编程方式,而是解决问题的方式。
以经典的“把大象装进冰箱”这个问题来举个例子
在面向过程的编程方式中实现“把大象放冰箱”这个问题答案是耳熟能详的,一共分三步:
开门(冰箱);
装进(冰箱,大象);
关门(冰箱)。
而面向对象的解决方法:
冰箱.开门()
冰箱.装进(大象)
冰箱.关门()