百科狗-知识改变命运!
--

面向程序和面向对象有什么异同?

桃子1年前 (2023-12-21)阅读数 6#综合百科
文章标签面向对象主体

面向过程:即将问题转化为关系和数值,通过关系和数值来描述问题,解决问题。模块化程度低。

面向对象不是简单的对编程对象的处理方式。它确切的说应该是这样的样子:首先将现实世界中,主体(即所谓对象)和主体间的关系进行想象(抽象),对应到编程中,强调程序中的各个主体(对象)和他们得关系(继承,多态什么的)一一对应现实世界中的主体。

所谓面向对象,就是讲编程的理念,从对数据的算法分析,转变为对现实世界问题的剖析,进而使编程摆脱数据的束缚,使得程序就像自然世界的主体和主体间的关系那样,

先将程序变为为一个一个的主体的组合体,然后看主体间的关系,自然而然的使得代码非常好维护,重用性也非常强,因为你知道dog就是现实中的狗,那么狗这个主体有什么功能你自然知道,狗和人是什么关系,你也清楚,你就不必看代码来分析这段代码什么意思,和那段又有什么关系了。这是不是一种非常自然明了的编程方式呢。

很多教程上来就说这个怎么用,那个怎么回事,看代码看到头晕也不甚明了,编出的程序乱七八糟,想怎么编就怎么编,实际上,这样子编程已经不是面向对象了,因为他即不剖析主体和主体间的关系,也不将程序中的主体与关系和现实一一对应主体。

其实我很想知道,写那些编程书籍的人,本身是否是程序员,本身是否明白什么是面向对象,知不知道面向对象是一种程序的设计方式,而不是程序的编写方式。

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

一、编程思想不同

1、面向过程:是一种以过程为中心的编程思想。都是以什么正在发生为主要目标进行编程。

2、面向对象语言:是一类以对象作为基本程序结构单位的程序设计语言,指用于描述的设计是以对象为核心,而对象是程序运行时刻的基本成分。

二、特点不同

1、面向过程:就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。

2、面向对象语言:识认性,系统中的基本构件可识认为一组可识别的离散对象,对象具有唯一的静态类型和多个可能的动态类型,在基本层次关系的不同类中共享数据和操作。

面向程序和面向对象有什么异同?

三、优势不同

1、面向过程:不支持丰富的“面向对象”特性(比如继承、多态),并且不允许混合持久化状态和域逻辑。

2、面向对象语言:在内部被表示为一个指向一组属性的指针。任何对这个对象的操作都会经过这个指针操作对象的属性和方法。

“面向过程”(ProcedureOriented)是一种以过程为中心的编程思想。这些都是以什么正在发生为主要目标进行编程,不同于面向对象的是谁在受影响。与面向对象明显的不同就是封装、继承、类。简写为POP。

面向对象(ObjectOriented,OO)是软件开发方法。面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。面向对象是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物。

鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com

免责声明:我们致力于保护作者版权,注重分享,当前被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!邮箱:344225443@qq.com)

图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,本着为中国教育事业出一份力,发布内容不收取任何费用也不接任何广告!)