面向对象与面向过程
1. 面向过程
面向过程就是分析出解决问题所需的步骤,然后用函数把这些过程一步一步实现,使用的时候再一个一个依次调用。比如我们都听过的笑话,把大象装进冰箱需要:1.打开冰箱门 2.把大象装进去 3.关上冰箱门
所以,面向过程,就是按照我们分析好的步骤按步骤解决问题
2. 面向对象(OOP)
面向对象编程就是把事物解构为一个个对象,对象再进行分工合作,比如刚才的笑话中的事物可以被对象化为
- 大象对象:进冰箱
- 冰箱对象:打开、关闭
然后对象之间分别使用各自的功能,就可以达到目的。
所以面向对象编程是以对象功能来划分问题,而不是步骤
3. 面向对象编程的特点
- 封装性:不需要知道内部如何操作,开始使用即可
- 继承性:子类可以继承父类的属性与方法
- 同一个函数接口,实现多种不同的表现方式
4.两种方式的对比
- 面向过程优点:性能比面向对象高,适合与硬件联系紧密的东西如单片机
面向过程缺点:没有面向对象易维护、复用、扩展 - 面向对象优点:易维护、易复用、易扩展,可以设计出更灵活的系统。
面向对象缺点:性能比面向过程低