面向对象和面向过程的本质区别

2021-08-01 02:27:39 来源:网络整理 作者:管理员

原标题:面向对象和面向过程的本质区别

面向对象和面向过程的本质区别

多年来,面向过程和面向对象为人所津津乐道,这个可能是程序员当中极其容易勾起的话题。而最容易谈起的就是C是面向过程的语言,C++是面向对象的语言,然而我觉得这个回答有点肤浅,因为C也可面向对象,C++也可面向过程。我们所说的面向过程和面向对象应该是一种思想,不应该限制在编程语言当中。

但是相对而言,C++,Java更容易面向对象,因为他们似乎专门为面向对象而生,解决了软件结构设计的一些难题;而C语言更容易面向过程,因为它是一门系统语言级别的语言,需要较高和较快的性能和速度。

其实很多人并没有意识到自己是在面向对象还是在面向过程,简单来说,虽然写了很多函数和很多个类,但是依然没有编程思想,人云亦云。

面向对象和面向过程的本质区别

首先我们来了解一下它们的概念

面向过程:是以过程为中心的编程思想。以我的理解,事物比较简单,可以用线性的思维去解决。有个同事是做mcu固件的,也就是单片机开发,用的是keil编译器,他干的就是不断写函数,单线程梭到底,不会用协程,多线程通信。

面向对象:是一种对现实世界理解和抽象的方法。以我的理解,事物比较复杂,使用简单的线性思维也无法解决。所以它有封装,继承,多态,抽象特征。项目程序代码是以类为单位,方法从属于类。

共同点:面向过程和面向对象都是解决实际问题的一种思维方式,二者相辅相成,并不是对立的。解决复杂问题,通过面向对象方式便于我们从宏观上把我事物之间复杂的关系、方便我们分析整个系统;具体到微观操作,仍然使用面向过程方式来处理。

面向过程

优点:性能比面向对象高,因为类调用时需要实例化,比较消耗资源;比如Linux/Unix等一般采用面向过程开发,性能是最重要的因素;很多驱动,单片机mcu开发,涉及到硬件图形渲染,算法封装等,都会采用面向过程。

缺点

1.复用性较低,因为面向过程时逐步进行功能的实现;

2.代码维护更改性低,在面向过程编程中没有面向对象的封装方法,如果出问题得全局进行逐步代码分析;

所以如果是面向过程,你采用多线程,多进程,协程,这些方式通信,其实还是比较痛苦的,需要你有扎实的编码水平和经验,不然一个bug可能会让你的大厦崩塌。

面向对象

优点:

1.易维护,代码可读性好,而且面向对象就是比较容易读懂业务逻辑;

2.易复用,需要的时候new一个类,实例化,可继承,可封装;

3.易扩展,可多态,可以自己重写实例化这个方法;

4.由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统更加灵活、更加易于维护;

5.在复用时直接调用封装好的方法即可,而且安全性相对较高,可以避免不必要的更改引起的错误;

6.允许一个对象的多个实例同时存在,而且彼此之间不会相互干扰;

7.安全性较高

缺点:其程序处理的效率比较低,代码容易冗余,经常碰到一个瓶颈后就需要重构一下。

而这里面需要提的是类和对象的关系。类是对象的抽象,实例是类的实现。C++中对象和类有何联系和区别:

它的区别就像

float pi = 3.141592654;

中的float和pi的区别一样。

类是用户自定义数据类型,而对象是这些类定义的具体实例或变量。

什么时候面向过程,什么时候面向对象

以上也简要表达了面向过程和面向对象的场景。就我觉得,如果是做上层应用,做app应用开发来看,有面向对象的思想就已经是水平相当好的程序员了。因为设计模式,很多设计思想的基础就是类,就是面向对象的叠加。只有写过几十万行代码的人才懂面向对象带来的舒畅,如果你仅仅只写过几万行代码,我想即使你用了面向对象的思想,你也体会不到他的优点。

凡事不可勉强,只要突破你的瓶颈后,在一些必须要用面向对象去解决问题你才能获取他的精髓,如果场景中面向对象和面向过程都能解决问题,那么我觉得你是不会体验到他们区别的。

对新手而言,可能面向过程是最经常的。即使你自豪的封装的几个类,那么也不要以为自己是在面向对象了,其实有可能你还是在面向过程。格局打开,尽可能阅读多的代码,去熟悉一些开源和大工程,这样就能感觉到的宇宙的浩瀚和自己的渺小,从而提升自己的水平,不断打破上限。

兔云程序

面向对象和面向过程的本质区别

致力于推广编程教程,服务程序员

22篇原创内容

公众号

面向对象和面向过程的本质区别

显示全文
为您推荐
钱姓起源和来历:活了八百岁的彭祖竟然是钱氏祖先
钱姓起源和来历:活了八百岁的彭祖竟然是钱氏祖先

钱姓排于百家姓中的第二位,虽然起源和来历并不多,但是钱姓人却分布广泛,成为了中国姓氏中的第二大姓。钱姓的主要来源就是彭祖的儿子篯孚,彭祖的真名叫做篯铿,是因为被尧封于大彭而得姓-彭,而他的儿子篯孚因为掌管着钱财,任职钱府上士,所以便为“钱”姓,所以彭钱是一家。...

发布时间:2024-09-20 20:03:27

胡服最早由谁引入中原?赵武灵王为推行骑射改革服饰
胡服最早由谁引入中原?赵武灵王为推行骑射改革服饰

胡服最早是由春秋战国时的赵武灵王-赵雍引入中原的,因为当时赵国的地形和地理位置都非常不好,常年深受战争威胁,加上赵武灵王继位之后,时局不稳,周边国家都想要攻打赵国,所以赵武灵王便下令让全员都推行胡服,并且学习骑射,相较于宽大的汉服更加便于行动。...

发布时间:2024-09-20 19:05:44

赛艇运动起源于哪里?英国船工无聊时竞赛(造就贵族运动)
赛艇运动起源于哪里?英国船工无聊时竞赛(造就贵族运动)

赛艇运动起源于英国的泰晤士河上,当时还是17世纪,英国泰晤士河上的船工在工作之余经常会举办一些赛船,久而久之就形成了一种习俗,在1715年的时候,为了庆祝英王的卫冕,所以第一次正式举办了赛艇比赛,最终在1775年发展为一个正式的运动项目,并且成立了相应的运动俱乐部。...

发布时间:2024-09-20 18:04:28

为什么不能用宸字取名?哪些名字普通人扛不起
为什么不能用宸字取名?哪些名字普通人扛不起

人们之所以不愿意或者不敢以“宸”为名,主要是因为在古时候“宸”有着“深邃的房屋”的意思,也就是专指皇帝的居住场所,象征着无上的权力,所以“宸”字自然也就成为了禁忌,不过现代人大多是害怕这个字的气势,普通人的命格扛不住。...

发布时间:2024-09-20 17:00:53

商细蕊原型是谁?原来四位京剧名旦都是灵感来源
商细蕊原型是谁?原来四位京剧名旦都是灵感来源

商细蕊是电视剧《鬓边不是海棠红》中的京剧名旦,很多人都为他和海归商人程凤台的知己故事而动容,但遗憾的是在历史长河中并没有商细蕊真正的原型,只能说他可能是作者根据历史上著名的京剧名旦构建的一个角色,因为他和梅兰芳、程砚秋、尚小云以及徐碧云等四人的经历和性格都有着极为相似之处。...

发布时间:2024-09-20 16:05:01

历史上著名的美女有哪些:杨玉环,君王不早朝(绝世美女)
历史上著名的美女有哪些:杨玉环,君王不早朝(绝世美女)

在中华上下五千年的历史长河中,除了王朝更替的政治生活与文化生活,还有一些美貌的女子点缀着历史的绘卷,那么在悠悠岁月中有哪些著名的美女呢?下面小编就来为大家盘点一下吧!...

发布时间:2024-09-20 15:04:04

历史上妃嫔最少的皇帝:明孝宗朱佑樘,独爱张皇后(童年不幸)
历史上妃嫔最少的皇帝:明孝宗朱佑樘,独爱张皇后(童年不幸)

谈及古代帝王,最让人津津乐道的当属那后宫佳丽三千,不过也不是所有的帝王都有那么充实的后宫,比如历史上有一位皇帝就只有一位妻子,是不是让人有点不敢相信,下面小编就带大家一起了解下吧!...

发布时间:2024-09-20 14:01:05

历史上最长情的皇帝:顺治皇帝,挚爱董鄂妃(为爱出家)
历史上最长情的皇帝:顺治皇帝,挚爱董鄂妃(为爱出家)

自古无情帝王家,说到帝王的爱情多是奢望,很多帝王后宫的妃子换了一个又一个,几乎都是薄情寡义的,但是漫长的历史长河中也有例外,有的皇帝便与众不同,特别的长情,下面小编来为大家介绍一下历史上最长情的皇帝吧!...

发布时间:2024-09-20 13:03:24

武侠剧中的绝世高手有哪些:扫地僧,化险为夷(秒杀高手)
武侠剧中的绝世高手有哪些:扫地僧,化险为夷(秒杀高手)

可以说人的成长伴随着无数的武侠剧,尤其是电视剧中的那些绝世高手更是让人影响深刻,有不少人小时候都幻想过可以武功盖世,一统江湖,那么有人知道武侠剧中有哪些绝世高手吗?下面小编为大家盘点一下吧!...

发布时间:2024-09-20 12:02:19

电视剧中的古装美女:刘亦菲,举止摇曳生姿(天仙下凡)
电视剧中的古装美女:刘亦菲,举止摇曳生姿(天仙下凡)

古装电视剧中有许多的美丽的女子,她们身着美丽的衣裳,一举一动摇曳生姿,美得让人挪不开双眼,可以说是一场视觉盛宴,下面就让小编为大家盘点一下那些古装美女吧!...

发布时间:2024-09-20 11:09:01

清朝古装剧中的美人:刘诗诗,若曦无人超越(顾盼生姿)
清朝古装剧中的美人:刘诗诗,若曦无人超越(顾盼生姿)

近年清朝古装剧收视率暴涨,这些电视剧不仅剧情引人入胜,身着清装的美人也同样吸引了不少目光,有着让人过目不忘的美貌,那么清朝古装剧中有哪些美人呢?下面小编就来为大家盘点一下吧!...

发布时间:2024-09-20 11:02:08

小青龟能长多大:背甲14厘米,体色会变化(濒危物种)
小青龟能长多大:背甲14厘米,体色会变化(濒危物种)

养龟市场上经常可以看到小青龟,这种乌龟乖巧可爱以及性情温顺,所以很多人都会选择小青龟来饲养,不过一直都是见到小青龟都比较小,这不禁令人好奇这种乌龟能长多大?下面小编就带大家一起了解一下小青龟吧!...

发布时间:2024-09-20 10:01:47