面向对象开发方法
外汇网2021-06-18 23:21:22
154
面向对象开发方法的形成传统的功能分解方法只能单纯反应管理功能结构的情况,报告流程模型(DFD)导致侧重反应事物的信息特质和流程,信息模拟只能被动地迎合事实困难需要的做法。结构化系统分析与设计方法:描述客观世界的困难领域与软件系统结构之间的不统一,结构化系统分析与设计只注重某些特定方面:如:DFD--反应报告的特性和流向模型业务流程图--反应业务操作的细节和程序模型面向对象开发方法的构成1、面向对象的(需求)分析OOA2、面向对象的设计OOD3、面向对象的程序OOP 面向对象开发方法的基本思想 客观世界是由各种各样的对象构成的,每种对象都有各自的内部状态和运动规律,不同对象之间的相互作用和联系就组成了各种不同的系统。在设计和达到一个客观系统时,在满足需求的条件下,把系统设计成一部分不可变的(相对固定)部分构成的最小集合(最好的设计)。这些不可变的部分就是所谓的对象。以对象为主体的OO方法的更深一步解释。 面向对象开发方法的开发过程 1、系统调查和需求分析:对系统将要面对的具体管理困难以及用户对系统开发的需求执行调查研究,即先弄清要干什么的困难。2、分析困难的性质和求解困难:在繁杂的困难域中抽象地识别出对象以及其举动、结构、属性、方法等。一般称之为面向对象的分析,即OOA。3、整理困难:对分析的结果作更深一步的抽象、归类、整理,并最终以范式的形式将它们确定下来。一般称之为面向对象的设计,即OOD。4、程序达到:用面向对象的程序设计语言将上一步整理的范式直接映射(即直接用程序设计语言来取代)为应用软件。一般称之为面向对象的程序,即OOP。5、识别客观世界中的对象以及举动,分别独立设计出各个对象的实体;分析对象之间的联系和相互所传递的信息,自此组成信息系统的模型;由信息系统模型转换成软件系统的模型,对各个对象执行归并和整理,并确定它们之间的联系;由软件系统模型转换成目标系统。 面向对象开发方法的特点 1、封装性。面向对象方法中,程序和报告是封装在一起的,对象作为一个实体,其操作隐藏在方法中,其状态由对象的"属性"来描述,而且只能通过对象中的"方法"来更改,从外界无从得知。封装性组成了面向对象方法的基础。因此,该种方法的创立者Codd和YOuMn觉得,面向对象就是"对象+属性+方法"。2、抽象性。面向对象方法中,把从具有共同性质的实体中抽象出的事物本质特质概念,称为"类"(Class),对象是类的一个实例。类中封装了对象共有的属性和方法,通过实例化一个类创建的对象,自动具有类中规定的属性和方法。3、继承性。继承性是类特有的性质,类可以派生出子类,子类自动继承父类的属性与方法。如此,在定义子类时,只须表明它不同于父类的特性,进而可大大提升软件的可重用性。4、动态链接性。对象间的联系是通过对象间的消息传递动态建立的。 面向对象开发方法的应用规模 在大型管理信息系统开发中,若不经自顶朝下的整体划分,而是一开始就自底往上地采取OO方法开发系统,会产生系统结构不合理、各部分关系失调等等困难。OO方法和结构化方法在系统开发中相互依存、不可替代。">编辑] 为何需要面向对象方法 软件作为系统的重要元素,是最复杂、最具智慧型的人类产品。软件是一种无形的媒介,开发人士一般很难精确预期它的特性。除了非常小的系统之外,软件开发是需要一组人士共同付出才可完成,而人的原因又会更深一步使困难复杂化。尽管软件开发的工具越来越先进,民众的经验也越来越丰富,但是需要处理的困难却越来越复杂。民众发现开发出的软件系统常常显现开发周期长,费用胜过预算,最终产品又不能满足用户需求,系统的可维护性差,造成软件危机。软件工程的方法就是基于软件危机的困难提出来的。最普遍运用的模型是结构化生命周期模型。它将软件开发分为几个不同的阶段需求分析、系统设计、系统达到、系统试探、试运行及维护等。它的目的是模仿工程中的一部分方法,将软件开发规范化,每阶段形成一定格式的文档,下一阶段以上一阶段的文档为原料。该种方法可以控制软件开发的进程,合理分配人力和资金,以及最重要的原因—达到软件的牢靠性及可维护性。结构化分析与设计方法是应用相当普遍而又成熟的软件工程设计和分析方法。它是在结构化程序设计的基础上提出来的。结构化分析以报告流图为工具,达到对困难空间即需求的描述。它首要以报告流、报告变换为考虑对象,从这个角度来描述整个系统的情况。结构化设计以报告流图为蓝本,提出其报告变换部分,加以功能分解,一直到最小的功能元素单位。然后开发人士据此执行程序设计。但民众在应用传统的结构化生命周期模型的过程中发现了很多很难克服的困难。如:该种方法要求分析人士在现实世界中追踪报告的流动,但很多系统不以报告流为主干,在该种情形下报告流图DFD就不是十分有效。(1)该种方法要求分析人士在现实世界中追踪报告的流动,但很多系统不以报告流为主干,在该种情形下报告流图DFD就不是十分有效。(2)划分加工十分问题,不晓得哪一个划分是最好的。(3)报告字典的范围非常大,这致使需求分析中的交流困难变得非常问题。(4)报告流方法不强调报告结构,只表明报告存贮。(5)结构化分析与结构化设计之间的过渡非常问题。这一面来自构造方法的转换,另一面来自添加实行细节。(6)生命周期模型务必在分析阶段终结后才可进入设计阶段,设计阶段完成后才可进入达到阶段,如此的话,上一阶段的错误或不完整性就会带到下一阶段。面向对象的方法正是拓宽软件开发道路的一种方法。当前,运用面向对象方法的比例尽管不是很大,但采取该种方法成功的比例却远远好于其余方法。面向对象方法的优越性来自下方几个方面:(1)面向对象的方法更靠近于人类的自然思维。人类在认识和理解现实世界中广泛运用的三个构造法则是区分对象及其属性、区分整体对象及其构成部分、区分及形成不同对象类。而面向对象正是基于对象及属性、类属及成员、整体及其部分这些概念基础之上的。因此它必然更容易被理解和运用。(2)系统分析、系统设计及达到之间采取同样的角度看待困难甚至同样的表明方法来描述间题,它们之间的连接是自然的无缝连接。(3)面向对象的方法会对象的属性及服务看为一个整体。这更符合客观世界的规律,进而使其理解与达到起来愈加容易,更深一步降低维护的费用。(4)继承的方法一面符合客观世界的规律,一面增强代码重用的机会性,以便提升软件的开发效率。(5)信息隐蔽原理使系统在改变的环境中有不错的适应性,进而使整个系统愈加平稳和易于维护。总之,面向对象的方法一面更易于民众理解并映射现实世界,另一面可以提升软件开发效率、牢靠性及可维护性。 参考文献 ↑ 张晓鹏,董宁. 面向对象开发方法及应用. 铁道学报, 1996,(S2)
标签:
随机快审展示
加入快审,优先展示
推荐文章
- 黑马在线:均线实战利器 9362 阅读
- 短线交易技术:外汇短线博弈精讲 4579 阅读
- MACD震荡指标入门与技巧 4732 阅读
- 黄金操盘高手实战交易技巧 5146 阅读
- 做精一张图 3841 阅读
热门文章
- 港币符号与美元符号的区别是什么啊? 27530 阅读
- 我国各大银行汇率为什么不一样啊? 17535 阅读
- 越南盾对人民币怎么算的?越南盾对人民币汇率换算方法是什么 12452 阅读
- 百利好环球欺诈,不给出金,无法联系。 11469 阅读
- 港元符号是什么啊 港元符号跟美元符号是一样吗 10626 阅读