【前端JS】什么是面向过程编程,什么是面向对象编程?
面向过程编程
概念
面向过程编程 POP(Process-oriented programming)即在编程的时候分析出解决问题所需要哪些步骤,然后用函数把这些步骤一步一步(step by step)实现,当轮到这个步骤的时候再进行一次调用即可。
分析步骤-写出步骤函数-调用一次函数
栗子
举个经典的栗子:把大象装进冰箱,用面向过程的方法需要几步?
- 打开冰箱门
- 把大象装进冰箱
- 把冰箱门关上
面向过程即按照分析好的步骤解决问题。
面向过程的编程语言
C语言、汇编语言。
面向对象编程
概念
面向对象编程 OOP(Object-oriented Programing)就是在编程过程中把所涉及到的事物分解成一个个的对象,然后由对象之间进行分工与合作。
即
- 对象
- 方法(行为)
特性
- 封装性
- 继承性
- 多态性
栗子
还是那个????,用面向对象的方法来分析如何把大象装进冰箱里?
对象 | 方法(行为) |
---|---|
???? | 进去 |
冰箱 | 1、打开 2、关闭 |
最后使用冰箱和大象的这些方法解决问题。
在面向对象程序开发的思想中,每一个对象都是一个功能中心,具有明确分工。
面向对象的编程语言
C++、JAVA、Javascript、C#、PHP、python以及golang
优缺点
面向过程
- 优点:性能相较于面向对象编程高,适合与硬件紧密联系的东西,比如单片机。
- 缺点:不如面向对象易维护,易复用,易扩展。
面向对象
- 优点:容易维护、复用、扩展。由于面向对象有封装、继承、多态性,可以设计出低耦合的系统,使系统更加灵活,也更易维护。
- 缺点:性能相较于面向过程较低。
总结
面向过程更适合一些小型的项目,面向对象适用于大型的多人合作项目。
一边学习一边记录,如有错误请大佬指出补充,后续将不断完善!!!蟹蟹!!