结构化与面向对象的区别是什么?

作者&投稿:逄诚 (若有异议请与网页底部的电邮联系)
~

结构化程序设计与面向对象主要的区别在于设计思维上不同,另外封装性上结构化编程比较难于封装,复用性上也不如面向对象编程。

1、设计思维。

面向过程程序设计方法的实质上是从计算机处理问题的观点来进行程序设计工作:“输入——运算——输出”。

面向过程程序设计者需要变更习惯的思维方法以贴近计算机的内部工作机理。面向过程程序设计所具有的流的工作性质,试图通过信息流及其转换来认识系统,不仅加大了程序设计的难度,同时亦使得程序的可理解性比较差。

面向对象在分析问题时,以对象为单位,考虑它的属性及方法,与传统的面向过程是完全不同的,面向过程在分析问题时,以一个具体的流程(事务过程)为单位,考虑它的实现。

当每次把各种设计模式回归到面向对象思想时,我都有一种“运用之妙,存乎一心”的感觉。如果能更多的更深层次的去思考面向对象思想,对于学习设计模式将会大有裨益。

2、封装性

结构化编程封装难度较大,因为其采用结构化程序分析设计程序时,开发者需要将客观世界模型分解一个一个功能,每个功能按照顺序用以完成一定的数据处理。 对于私有的方法,较难控制,敏感信息就比较难隐藏。

面向对象编程的封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。

3、复用性

传统的结构化程序设计方法以过程为中心构造应用程序,数据和处理数据的过程代码是分离的、相互独立的实体,设计出的程序可重用代码少,且当代码量增加时维护数据和代码的一致性困难

面向对象程序设计方法中,对象所具有的封装性和继承性使得代码重用成为可能,并大大减少了程序出错的可能性。

参考资料来源:百度百科——结构化程序设计 

参考资料来源:百度百科——面向对象程序设计




结构化程序设计和面向对象程序设计之间的区别。不要太白话了,谢谢...
结构化设计的思路:由上及下,逐级分解,每级求解,最终完成最初要求的功能 面向对象 的思路:先分析问题的本质,问题在现实中是由哪些个体(对象)来共同配合完成要所要求的活动,抽象出所有的对象,每个对象完成自己能做的部份,最终把问题中所有对象组合起来,就完成了所要求的求解。面向对象的思路更...

结构化程序设计与面向对象设计的主要区别是什么
结构化程序设计 #面向对象程序设计

什么是结构化开发方法,什么是面向对象开发方法,比较二者的区别与...
结构化开发方法:早期的程序开发,如C语言,都是用结构化开发方法。结构化开发又叫做面向过程开发,具体原理是将一个软件分为多个过程(函数)进行开发,用结构体(struct)管理数据。这种开发方式使得代码的可读性变得很低,并且代码难以移植。现在较常用的开发方法为面向对象开发(Object-Oriented),分为...

结构化分析方法和面向对象分析方法可以一起使用吗
结构化分析方法和面向对象分析方法可以一起使用。结构化分析是过程和数据的集合,以过程为中心,面向对象分析是数据和相应操作的封装,以对象为中心。从运行控制方面看,结构化分析采用顺序处理方式,由过程驱动控制,两者可同时使用。

什么是结构化分析和面向对象分析,比较一下两者的异同
结构化分析:1-10步环环相扣,万一出错你得全部找一次,而且可能一个改动则后面全都改了 面向对象分析:出租车,商场,衣服,我;4个对象互相独立,倘若"我"说错了目的地,错在"我"身上,和出租车没有关系,不用去考虑出租车是否出错;又或者是商场区域出错,那其他3个对象也不需要考虑.同时,如果我需要增加...

什么是程序设计的结构化程序设计和面向对象程序设计方法?
1、结构化程序设计 在结构化程序设计中,任何程序段的编写都基于3种结构:分支结构、循环结构和顺序结构。程序具有明显的模块化特征,每个程序模块具有惟一的出口和入口语句。结构化程序的结构简单清晰,模块化强,描述方式贴近人们习惯的推理式思维方式,因此可读性强。2、面向对象程序设计 面向对象程序设...

面向对象的程序设计和C语言的结构化程序设计有什么不同?
你好!为什么叫C,为什么叫C++?C是高级语言的一种,C++是对C的补充以及完善。C可以说是面向过程的语言,C++就可以说是面向对象语言,对C的完善与扩充。具体来说C++类是对C结构体的扩充,应为C++结构体(struct)和类(class)几乎完全差不多,只是默认的访问权限不同,以及其他细微的差别!所以说把C...

结构化程序设计和面向对象程序设计的主要特征各是什么?
第一种编程方式叫做"面向过程的模型",按这种模型编写的程序以一系列的线性步骤(代码)为特征,可被理解为作用于数据的代码.如 C 等过程化语言. 第二种编程方式叫做"面向对象的模型",按这种模型编写的程序围绕着程序的数据(对象)和针对该对象而严格定义的接口来组织程序,它的特点是数据控制代码的访问.通过把控制权...

与结构化开发过程相比,为什么面向对象能更真实地反映客观世界?
结构化也就是面向过程的方法,从客观事物的行为出发,肢解客观事物的整体性,从分析、设计到编程完全看不出事物的原貌;面向对象从观察、抽象客观事物开始,就以事物原貌、事物的整体为出发点,从分析、设计、编程一直反映事物的原貌,它利用事物具有整体性、关联性、交互性、继承性和多态性的本源特征映射...

举例说明面向对象编程和结构化编程的优缺点
弊端是,没有人还记得面向对象原本要解决的问题是什么。1、面向对象原本要解决什么(或者说有什么优良特性)似乎很简单,但实际又很不简单:面向对象三要素封装、继承、多态 (警告:事实上,从业界如此总结出这面向对象三要素的一刹那开始,就已经开始犯错了!)。封装:封装的意义,在于明确标识出允许...

荥经县17171621443: 面向对象方法与结构化方法有什么区别 -
高邰吗氯: 简单的说,面向对象的方法将对象作为实体,对其操作的函数对其依赖性很强,也就是对象更重要,例如C++语言,而结构化方法更关注的是程序自己的运行状态,以及函数的执行效率,例如C语言,在现代编程风格里面,越来越重视面向对象方法了

荥经县17171621443: 结构化程序设计与面向对象设计主要区别 -
高邰吗氯: 结构化程序设计与面向对象主要的区别在于设计思维上不同,另外封装性上结构化编程比较难于封装,复用性上也不如面向对象编程. 1、设计思维. 面向过程程序设计方法的实质上是从计算机处理问题的观点来进行程序设计工作:“输入——...

荥经县17171621443: 面向对象程序设计和结构化程序设计的区别,150字左右 -
高邰吗氯: 1.首先最根本的是设计思想,一个是以对象为基本单元,用对像的使用来完成程序功能,后者是基于过程的设计,比如你要做一个赛车的函数,在利用面向对象设计时,你先写好轮子类,发动机类,方向盘类...再将他们组合起来.而面向结构化则只是写你操作赛车是要进行的动作.这也只是个大概,具体理解在你学一段时间后会有自己的体会. 2.然后是他们的适用范围,越来越多的应用程序,web程序选择使用面向对象设计,有利于代码重用,消除BUG等等,但基层的程序大多会选择面向结构化的程序. 希望的对楼主有用哈.只是一些理解,正确与否还要楼主通过自己的学习来印证. 祝楼主学习顺利,一生平安.

荥经县17171621443: 面向对象和结构化程序设计的区别 -
高邰吗氯: 自己百度下啊...看看再总结下...以下看看,是否对你有帮助1..思想的区别* 结构化程序设计 思想:在编程之前,先对程序系统根据业务需要进行整体的规划,描述出系统的流程.对程序系统进行模块化分和功能分配.设计出各种图表,...

荥经县17171621443: 结构化编程和面向对象编程的区别是什么
高邰吗氯: 结构化编程是针对汇编那种方式的去掉了goto等让程序看起来很乱的语法,讲究的是顺序结构化; 面向对象是类的思想,通过继承多态等实现程序共享,更适合大型程序的编制,当然小程序也适合的,而且很不错,建议多多理解下

荥经县17171621443: 面向对象的开发方法和结构化的开发方法的区别 -
高邰吗氯: 面向对象优点:1、稳定性好; 2、可重用性好; 3、较易开发大型软件产品; 4、可维护性好.结构化方法是将系统看成是过程的集合,过程与数据实体之间

荥经县17171621443: 结构化建模与面向对象的建模有何不同 -
高邰吗氯: 结构化建模与面向对象的建模不同:结构化方法是最早最传统的软件开发方法,也是迄今为止信息系统中应用最普遍、最成熟的一种,它引入了工程思想和结构化思想,使大型软件的开发和编程都得到了极大的改善.结构化方法的基本思想可...

荥经县17171621443: 面向对象语言和结构语言有什么区别? -
高邰吗氯: ,“面向过程程序设计”、主要是为拉大型的工程计算或者为拉完成某个任务而求出结果的对界面则要求不高 其优点是运行速度快“面向对象程序设计主要是对各种事物能形象的描述并且模拟在计算机上运行它兼容以上面向过程的好多功能 优点是界面比较好做 缺点执行速度和容量没有上面的快结构化程序设计 对于以上二者均适合 这只是说明设计是的思路和方法

荥经县17171621443: 面向对象设计与结构化程序设计的区别 -
高邰吗氯: 面向对象设计与人类习惯的思维方法一致,稳定性好,可重用性好,易于开发大型的软件产品,可维护性好.结构化程序设计就刚刚相反.

荥经县17171621443: 你觉得面向对象方法和结构化分析方法有什么区别?试分析之 -
高邰吗氯: 结构化是对数据及算法的一种处理方式.具体没用过,只是了解是这个样子.(下面的是我的一些想法,拿来想和大家交流一下,因为交流的机会很少,大家似乎很急躁.) 面向对象不是简单的对编程对象的处理方式.它确切的说应该是这样的...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网