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

2020-02-04 09:20发布

也不知道这个问题该发在那个栏目里了 就发在51栏目里吧  我想很多菜鸟都和我一样 搞不懂面向对象与面向过程的区别 希望老鸟们多多指教;

在百度里搜索里许多帖子,都讲面向对象与面向过程的区别,但是几乎都讲不明白。我想可能这就是搞硬件出身的和搞软件出身的不能融合到一起造成的吧;

我单片机执行是一步一步的执行的。我先去干这个,然后再去干那个,然后就是等待,这个就是面向过程,但是我很难理解面向对象;(本人没有PC机编程经验,就懂得些单片机)

我想好的实例更能说明一切吧。不要举太多例子,就像刚开始学中断,用烧水洗衣服做饭但是我还是花了好久好久才理解明白中断是干什么的,其实如果用最简单的程序举例,或许几行代码就能说清楚了;

这个问题困扰我好久了。希望老鸟们赐教,谢谢~
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
46条回答
eggcar
1楼-- · 2020-02-04 11:42
你没写过上十万行的程序是不能轻易理解面向对象的意义的…没有OO就没有今天的IT产业…OO是一种思维方法,一种世界观,而不是一类编程语言,用C照样能实现面向对象的设计,只是CPP能从语法层面使得程序更简洁更规范…当你每看到一条狗就开始对它分析如何建立类来描述的时候,你就入门了…推荐一本书,《OOD启思录》…最根本的目的还是代码复用…还有不要认为过程和对象势同水火,所有行为的描述依然是面向过程的,只是通过类的封装来最有效的组织起来,更加容易复用而不需要了解内部实现…再通俗一点就是,面向对象方法为不同的程序员提供了统一的interface,方便了合作与维护,最最通俗的,类就是高级的结构体
dew2901
2楼-- · 2020-02-04 13:33
回复【1楼】eggcar  八号机
-----------------------------------------------------------------------

楼上的话很有深度,而且也很有意义,谢谢~

还在前半个小时我就一直认为 对象和过程是完全水火的~~

我觉得面向过程的第一步就是 人以类聚物以群居~~然后下一步就不知道了~~呵呵
ssaweee
3楼-- · 2020-02-04 16:21
面向过程就是对过程的描述编程如 做A然后B。。。

而面向对象就是把整个过程要处理的开做对象,编写的是对象与对象的作用。如一个字符串可以看作对象,对他的合并改写等都是对他的操作而已,
dew2901
4楼-- · 2020-02-04 17:16
 精彩回答 2  元偷偷看……
ssaweee
5楼-- · 2020-02-04 21:45
回复【4楼】dew2901  测控阿壮
-----------------------------------------------------------------------

形象点说,人是个对象,走路,抬手,写字就是方法,属性有身高体重...
而电脑中一个字符串,一个按钮,一个算法都可以看做一个对象
eggcar
6楼-- · 2020-02-05 02:27
譬如说你要开公司,创业初期整个公司就两三个人,所有的事都是你这个老板安排做的,后来发展越来越大了,你一个人不可能管理这么大的公司的每一个细节了,于是就成立了各个部门,制定每个部门的指责以及结构,部门下面还可以再设部门,之后需要完成什么任务只需要对各个部门下达命令,或者协调各个部门之间的交流关系,不需要你一步一步告诉他们怎么做,你需要关注更高层面的问题

一周热门 更多>