什么是面向对象与面向过程?

全文来源大佬链接:https://blog.csdn.net/jerry11112/article/details/79027834,以下仅为个人理解进行了加工,想要真正深入理解请移至大佬文章。

面向对象与面向过程的区别

面向对象(Object Oriented,OO)基本思想:从现实世界中客观存在的事物出发来构造软件系统,并在系统的构造中尽可能运用人类的自然思维方式。面向对象更加强调运用人类在日常生活的逻辑思维中经常采用的思想方法与原则,如抽象、分类,继承、聚合、多态等。人在思考的时候,首先眼睛里看到的是一个一个的对象。对象有属性,有共性的对象又可以组成类。

面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。

面向过程(Procedure Oriented)是一种以过程为中心的编程思想。面向过程也可称之为“面向记录”编程思想,他们不支持丰富的“面向对象”特性(比如继承、多态),并且它们不允许混合持久化状态和域逻辑。

面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;

两者的概念和区别其实只要接触过的人都可以说出来,只不过在于语言组织能力的不同而已,二者解决问题的思路不一样。比如说把大象放进冰箱:

我们都知道段子说的有三步,这是利用面向过程的方法:
第一步,打开冰箱,
第二步、放进大象、
第三步、关上冰箱。

而如果面向对象的话:
首先将问题的对象抽象出来,有三个,大象、冰箱、放大象的人,或者只有一个对象,那就是冰箱,也只有一个动作,将大象装入冰箱。

这不是一个很恰当的例子,但是我们可以看出来,一个要解决问题会拆分成多个步骤去解决问题,第一步怎么做,第二步怎么做,而面向对象它会先抽离问题中的对象。
”面向过程”是一种是事件为中心的编程思想。就是分析出解决问题所需的步骤,然后用函数把这写步骤实现,并按顺序调用。”面向对象“是以“对象”为中心的编程思想。

根本的不同导致结果出现偏差——他们终将走向不同的路

面向过程:我的优点是性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发,性能是最重要的因素。 缺点:没有面向对象易维护、易复用、易扩展(一次性使用,无法模块化)

面向对象:我的优点是易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统更加灵活、更加易于维护 (可以模块化)
缺点:性能比面向过程低

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值