举一个简单的例子:
把大象装进冰箱一共需要几步?
面向过程:
- 打开冰箱门
- 把大象放进冰箱
- 关上冰箱门
面向对象
- 招一个能操作冰箱的工人
- 指挥工人装大象
也许现在的区别并不是很明显,但是如果我们加大量级,来看看
假设要把100只大象装进冰箱,共分为几步?
面向过程:
- 打开冰箱门
- 把大象装进冰箱
- 关上冰箱门
。。。。。。此处省略N个字
面向对象的回答依然没有改变
由此可见,两种方法的效率有了明显的区别。
那么何为面向对象呢?
面向即可理解为重点关注,面向对象是相对于面向过程来讲的,指的是把相关的数据和方法组织成为一个整体来看待(封装)
通过以上的比较,就会发现面向过程很死板,是很难适应变化的,面向对象更灵活,可复用性更高,当然,以上装大象的例子,假设只有一个大象(或者操作步骤简单),面向过程的效率还是优于面向对象的。