- 编程范式是一种编程风格或编程思想,它描述了如何使用编程语言来解决问题、组织程序并实现算法。不同的编程范式采用不同的方法和技巧来处理数据和操作过程。
面向过程
- 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候再一个一个的依次 调用就可以了
- 面向过程是一种编程范式,其中程序被组织为一系列按顺序执行的函数或步骤。在面向过程的程序设计中,数据和函数被分开处理,函数通常采用输入参数并输出结果。
举例:
-
计算机启动时会执行许多面向过程的任务,如初始化硬件、加载操作系统等。
-
一个简单的计算器程序,它可能包含诸如“加”、“减”、“乘”、“除”等函数,每个函数都接受输入参数并返回结果,根据用户输入的不同命令来调用这些函数以完成计算。
-
举个栗子:蛋炒饭
- 可以理解为面向过程,就是按照我们分析好了的步骤,按照步骤解决问题。
面向对象
- 面向对象是一种编程范式,其中程序被组织为一组对象,每个对象包含数据和对这些数据进行操作的方法。在面向对象的程序设计中,重点是对象之间的交互和关系,而不是函数或过程。
- 面向对象是把事务分解成为一个个对象,然后由对象之间分工与合作
举例:
- 一个汽车制造商可能会使用面向对象的编程来设计其生产线控制系统。该系统可能包括多个对象,如机器人、传送带和工作站。每个对象都有自己的属性和方法,例如机器人可以移动和抓取零件,传送带可以运输部件,工作站可以执行各种加工操作。这些对象可以通过发送消息或调用方法来相互通信,最终实现整个生产线的自动化控制。
- 一个电子商务网站,该网站可能包括多个对象,如用户、购物车、商品和订单。每个对象都有自己的属性和方法,例如用户可以登录和浏览商品,购物车可以添加和删除商品,订单可以生成和支付。这些对象可以通过消息传递或方法调用来相互交互,最终实现整个电商网站的功能。
- 举个栗子:盖浇饭
- 面向对象是以对象功能来划分问题,而不是步骤。
面向对象特性:
- 封装性
- 继承性
- 多态性
区别
面向过程编程:
- 优点:性能相对来说比面向对象高,适合跟硬件联系很紧 密的东西,例如单片机就采用的面向过程编程。
- 缺点:不灵活、复用性较差
面向对象编程:
- 优点:易维护、易复用、易扩展,由于面向对象有封装、 继承、多态性的特性,可以设计出低耦合的系统,使系 统 更加灵活、更加易于维护
- 缺点:性能相对来说比面向过程低