Young87

当前位置:首页 >个人收藏

面向对象与面向过程

前言

如果你总是对面向对象和面向过程傻傻分不清,这篇博客尽量会用通俗的方式来讲解。

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

面向过程是直接将解决问题的步骤分析出来,然后用函数把步骤一步一步实现,然后再依次调用就可以了;而面向对象是将构成问题的事物,分解成若干个对象,建立对象的目的不是为了完成一个步骤,而是为了描述某个事物在解决问题过程中的行为。

 

面向过程思想偏向于我们做一件事的流程,首先做什么,其次做什么,最后做什么。

面向对象思想偏向于了解一个人,这个人的性格、特长是怎么样的,有没有遗传到什么能力,有没有家族病史。

 

打个比方,分别求出长方形、圆形的周长和面积。

面向过程会以,求解数学题的思路去思考:

  1. 设定长方形的长和宽分别为x和y,圆的半径为r

  2. 确定长方形、圆形的周长和面积的算法

  3. 编写出两个计算周长和面积的函数

  4. 将x、y和r传入相对应的函数,求解长方形、圆形的周长和面积

 

面向对象会以,描述对象的思路去思考:

  1. 对规则图形的一般属性和性质进行定义,如周长和面积

  2. 在规则图形的基础上,创建长方形,描述长方形的属性和性质

  3. 在规则图形的基础上,创建圆形,描述圆的属性和性质

  4. 分别创建长方形和圆形的对象,调用它们的周长和面积函数,以求解长方形、圆形的周长和面积

 

面向过程是从细节出发,将问题细化为先后步骤;

面向对象从宏观出发,重在模拟整个情境中各个要素之间的交互。

 

面向过程和面向对象的优缺点

下边面向过程和面向对象的概念,想先看概念的小伙伴可以先往下翻。小编在找资料的时候翻到这么一篇文章,写得真的不错:

除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog

上一篇: Redis 面试题集锦

下一篇: 轻量级网络论文:GhostNet: More Features from Cheap Operations及PyTorch其实现

精华推荐