您的位置:首页 > 编程语言

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

2016-09-04 21:05 239 查看
很多人刚入门时都不分不清这两者的区别,我那时候也是。所以今天,就动笔写了这篇文章,如有错误,欢迎指教!

我就不说那些定义了,就因为看不懂,所以才会来查文章,不是嘛?所以再复述也就没有了意义!

首先,面向过程,就相当于一个人来做所有的过程。

而面向对象呢,就是把编程中的事物看成对象,每个对象都有自己的职责。

下面举例:

面向过程:

A有4个能力,b1,b2,c1,c2。

面向对象:

A有两个能力:通知B要做什么,和通知C要做什么。

B有两个能力:b1,b2。

C有两个能力:c1,c2。

这么说,不知道大家有没有懂一点。

再举个例子:

背景是这样的:

主程序是卖木材的,要求是卖给两人,两人分别拿来做桌子和做椅子。

面向过程:

主程序判断卖给谁,然后调用程序做对应的工作。

面向对象:

主程序只需要知道卖东西,给谁都无所谓。

两个对象接收到东西,做自己该做的就行了。

总结一下:

面向过程就是一个人要把所有事情都做了。

面向对象则是每个人之间分工合作,每个人只需要知道自己能够做什么就行了,就像一个公司,大领导通知小领导,小领导通知员工干活。大领导不用知道员工怎么完成自己的要求的,员工也不用知道其他员工需要做什么!

面向过程的代码无疑会比面向对象的简单很多,但是逻辑却是会更加混乱!

而面向对象,代码很多——因为要建立很多的对象嘛!但是条理清晰,每个对象都有自己的职责,分工明确!

第一次写这种东西,本人也是个刚入门的小菜鸟。如果有问题,再次欢迎批评指正!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息