面向对象的程序设计方法采用了什么样的抽象方法构建程序的类与对象

面向对象的程序设计方法采用了什么样的抽象方法构建程序的类与对象,第1张

1.结构化设计方法

所谓结构化程序设计方法主张把软件系统按功能(对应结构化程序中的最小单元函数)进行逐步的细分,因此也被称为面向功能的程序设计方法。这种设计方法的每个功能都负责都数据进行一次处理,即每个功能都接受一些输入数据,处理完后输出一些数据,这种处理数据的方式也被称为面向数据流的处理方式。

结构化设计采用自顶向下设计方法,在设计阶段需要考虑每个模块应该分解成哪些子模块,每个子模块又该分解成哪些更小的子子模块。。。以此内推,直到模块被细化为一个个函数。

这种结构化的设计方法显然是有局限性的:

1.设计不够直观,与人类的思维方式不一致。因为开发者册纤需要将客观世界的模型分解成一个个功能,每个功能用于完成一定的数据处理。

2.适应性差,可扩展性不强。由于采用自顶向下的设计方法,当用户需求改变时,需要自顶向下的修改模块结构,维护的成本相当大。

程序的三种基本结构:顺序结构、选择结构和循环结构。

2.面向对象设计方法

面向对象程序设计方法的基本思想是使用类、对象、继承、封装和消息等概念进行程序设计。它从现实世界客观存在的事物(对象)出发来构造软件系统。强调尽可能用人类自州高仿然的思维方式思考问题,认识问题,从而将现实世界中的事物抽象成系统中的类,作为系统的基本构成单元。这样构建的系统能直接映射客观世界,更符合现实世界的本来面貌。

面向对象的基本哲学是世界是由各种各样具有自己的运动规律和内部状态的对象所组成的;不同对象之间的相互作用和通信构成了完整的现实世界。

从程序设计的角度看,面向对象的程序设计语言必须有描述对象及其相互之间的关系的语言成分。归纳起来即:系统中一切都是对象;对象是属性及其 *** 作的封装体;对象可以按性质划分为类,对象是类的实例;实例关系和继承关系是对象之念明间的静态关系;消息传递是对象之间动态联系的唯一形式,也是计算的唯一形式;方法是消息的序列。

在面向对象的编程过程中,开发者要从自己的使用角度和认识角度出发来定义类,从而模拟客观世界的事物,并让自己明白这种事物是用来做什么的,对我们有什么意义。用抽象的方法忽略一个事物中与目标类无关的那些方面,充分地注意与当前目标有关的方面。

顾名思义手凯抽象编程是指在编程的过程中把大象抽出来。

如何在编程的过程中把大象抽出并保持程序的可移植性,这个一直以来是一个困扰全世界各类语言编程的程序员的一个难题。

最早提出抽象这个概念的是

达芬奇

在他的名画中有着抽象的充分演示。

如果在一个项目中做到抽象编程的话,无疑是完美的。那么在编译型的语言中如果做到呢?

首先搭建环境,这个问题怎么说呢?真是个见仁见智的。

在C语言中和在JAVA又或者在Python中如何搭建这个抽象的环境。

由于笔者最近热衷于Python的开发。首先谈谈在Python中如何做到把大象抽出来的同时保证程序的完美的可移植性。

第一

建立一个抽象类库。

打开IDLE,引入抽象的概念。

第二

告诉大象我们即将把你抽出来。这个对于大象来说是很不公平的,它肯定的回答NO

那么我们是不是就不能把大象抽出来了呢?当然可以。大象是很笨的,我们可以先构造一个函数。内容包括香蕉芒果等大象爱吃的食物,先把大象“骗”出来。当然这个也是很有技巧的。骗出来以后大象暂时存在什么地方呢?众所周知Python讲究效率、快捷的开发注重的是解决问题。那么,我们到哪里去找个那么大的空间把大象存进去呢?答案当然是动物园啦。首先与管理员协调暂存事宜。待需要的时候在把大象引入回来。

第三

大象的引入问题

这个时候相信大家对把大象存在什么位置已经有了个初步的了解,但是如果管理员很热爱大象的话,给大象提供的伙食比我们先前的要好。那么这个时候引入无疑会增加敏薯瞎成本。必须提供更好的伙食条件大象才有可能原因再次回来我们预先的架构中继续工作。那么在作者的BLOG中有着一套比较完整的解决方案。下面的参考地址会给出作者的Blog地址。请大家争相传阅。

总结:抽象编程的原理大家都清楚了。需要解决的主要问题就桥空是把大象抽出后的再次引用问题。这个也是本文的难点。希望对大家有所帮助。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12505128.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存