1. 面向对象编程 (OOP)
- 以 类或对象 作为基本单元来组织代码。
- 使用 封装、继承 和 多态 作为代码设计的指导原则。
2. 面向过程编程
-
以 过程 作为基本单元来组织代码,过程对应到代码中的 函数。
-
函数和数据是分离的,数据通常指的是 成员变量。
3. 面向过程编程示例:
用咖啡机煮咖啡为例,按照面向过程的流程是:
- 执行加咖啡豆方法
- 执行加水方法
- 执行煮咖啡方法
- 执行喝咖啡方法
很简单直观的操作,你可能没什么感觉,我再按面向对象思想来分析下这个流程
4. 面向对象编程示例:
在执行煮咖啡操作前要抽象出:人和咖啡机(分类),然后开始执行
- 人.加咖啡豆
- 人.加水
- 咖啡机.煮
- 人.喝咖啡
面向过程,从名字可以得知重点是过程,而面向对象的重点是对象。
从这个例子可以看出两者的不同:面向过程是很直接的思维,一步步的执行,一条道走到底。
5. 思想上的变化
-
面向过程:直接按步骤执行,一条道走到底。
-
面向对象:先抽象事物,分类得到不同的类,划分每个类的职责,然后调用类的方法执行。
6. 面向对象编程的特点
-
封装:将数据和操作这些数据的方法组合在一起。
-
继承:允许新创建的类继承现有类的属性和方法。
-
多态:允许同一个接口接受不同的数据类型。
7. 代码分布的变化
- 面向对象编程将代码实现封装在相应的类中,而不是集中在一个方法里。
8. 思维模式的转变
- 从计算机思维到人类思维的变化,更符合人类面对复杂场景时的分析思维。
9.面向对象编程的优势 - 适应复杂业务的需求,易于维护和扩展。
- 类似人类思考方式,易于理解和使用。
10.总结
面向对象编程与面向过程编程的主要区别在于组织代码的方式和思维模式。面向对象编程更符合现代软件开发的需求,提供了一种更自然、更灵活的方法来构建软件系统。