- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
? ?
?
? ?
面向对象开发方法-详解
?
? ?
?
?
?
?
?
?
?
? ? ?
?
?
?
?
?
(重定向自面向对象法)
面向对象开发方法(ObjectOriented,OO)又称:快速原型法
目录
1 面向对象开发方法的形成
2 面向对象开发方法的组成
3 面向对象开发方法的基本思想
4 面向对象开发方法的开发过程
5 面向对象开发方法的特点
6 面向对象开发方法的应用范围
7 为什么需要面向对象方法[1]
8 参考文献
面向对象开发方法的形成
传统的功能分解方法只能单纯反映管理功能结构的状况,数据流程模型(DFD)只是侧重反映事物的信息特征和流程,信息模拟只能被动地迎合实际问题需要的做法。结构化系统分析与设计方法:描述客观世界的问题领域与软件系统结构之间的不一致,结构化系统分析与设计只注重某些特定方面:
如:DFD--反映数据的特性和流向模型
业务流程图--反映业务操作的细节和程序模型
面向对象开发方法的组成
1、面向对象的(需求)分析OOA
2、面向对象的设计OOD
3、面向对象的程序OOP
面向对象开发方法的基本思想
客观世界是由各种各样的对象组成的,每种对象都有各自的内部状态和运动规律,不同对象之间的相互作用和联系就构成了各种不同的系统。
在设计和实现一个客观系统时,在满足需求的条件下,把系统设计成一些不可变的(相对固定)部分组成的最小集合(最好的设计)。这些不可变的部分就是所谓的对象。
以对象为主体的OO方法的进一步解释。
面向对象开发方法的开发过程
1、系统调查和需求分析:对系统将要面临的具体管理问题以及用户对系统开发的需求进行调查研究,即先弄清要干什么的问题。
2、分析问题的性质和求解问题:在繁杂的问题域中抽象地识别出对象以及其行为、结构、属性、方法等。一般称之为面向对象的分析,即OOA。
3、整理问题:对分析的结果作进一步的抽象、归类、整理,并最终以范式的形式将它们确定下来。一般称之为面向对象的设计,即OOD。
4、程序实现:用面向对象的程序设计语言将上一步整理的范式直接映射(即直接用程序设计语言来取代)为应用软件。一般称之为面向对象的程序,即OOP。
5、识别客观世界中的对象以及行为,分别独立设计出各个对象的实体;分析对象之间的联系和相互所传递的信息,由此构成信息系统的模型;由信息系统模型转换成软件系统的模型,对各个对象进行归并和整理,并确定它们之间的联系;由软件系统模型转换成目标系统。
面向对象开发方法的特点
1、封装性。面向对象方法中,程序和数据是封装在一起的,对象作为一个实体,其操作隐藏在方法中,其状态由对象的属性来描述,并且只能通过对象中的方法来改变,从外界无从得知。封装性构成了面向对象方法的基础。因而,这种方法的创始人Codd和YOuMn认为,面向对象就是对象+属性+方法。
2、抽象性。面向对象方法中,把从具有共同性质的实体中抽象出的事物本质特征概念,称为类(Class),对象是类的一个实例。类中封装了对象共有的属性和方法,通过实例化一个类创建的对象,自动具有类中规定的属性和方法。
3、继承性。继承性是类特有的性质,类可以派生出子类,子类自动继承父类的属性与方法。这样,在定义子类时,只须说明它不同于父类的特性,从而可大大提高软件的可重用性。
4、动态链接性。对象间的联系是通过对象间的消息传递动态建立的。
面向对象开发方法的应用范围
在大型管理信息系统开发中,若不经自顶向下的整体划分,而是一开始就自底向上地采用OO方法开发系统,会造成系统结构不合理、各部分关系失调等等问题。OO方法和结构化方法在系统开发中相互依存、不可替代。
为什么需要面向对象方法[1]
软件作为系统的重要元素,是最复杂、最具智慧型的人类产品。软件是一种无形的媒介,开发人员通常难以精确估计它的特性。除了非常小的系统之外,软件开发是需要一组人员共同努力才能完成,而人的因素又会进一步使问题复杂化。虽然软件开发的工具越来越先进,人们的经验也越来越丰富,但是需要解决的问题却越来越复杂。人们发现开发出的软件系统常常出现开发周期长,费用超过预算,最终产品又不能满足用户需求,系统的可维护性差,产生软件危机。
软件工程的方法就是基于软件危机的问题提出来的。最广泛使用的模型是结构化生命周期模型。它将软件开发分为几个不同的阶段需求分析、系统设计、系统实现、系统测试、试运行及维护等。它的目的是模仿工程中的一些方法,将软件开发规范化,每阶段形成一定格式的文档,下一阶段以上一阶段的文档为原料。这种方法可以控制软件开发的进度,合理分配人力和资金,以及最重要的因素—实现软件的可靠性及可维护性。
结构化分析与设计方法是应用相当广泛而又成熟的软件工程设计和分析方
文档评论(0)