📄 200603101726185.html
字号:
<P> 目前,面向对象开发方法的研究已日趋成熟,国际上已有不少面向对象产品出现。面向对象开发方法有Coad方法、Booch方法和OMT方法等。</P>
<P> 1.Booch方法</P>
<P> Booch最先描述了面向对象的软件开发方法的基础问题,指出面向对象开发是一种根本不同于传统的功能分解的设计方法。面向对象的软件分解更接近人对客观事务的理解,而功能分解只通过问题空间的转换来获得。</P>
<P> 2.Coad方法</P>
<P> Coad方法是1989年Coad和Yourdon提出的面向对象开发方法。该方法的主要优点是通过多年来大系统开发的经验与面向对象概念的有机结合,在对象、结构、属性和操作的认定方面,提出了一套系统的原则。该方法完成了从需求角度进一步进行类和类层次结构的认定。尽管Coad方法没有引入类和类层次结构的术语,但事实上已经在分类结构、属性、操作、消息关联等概念中体现了类和类层次结构的特征。</P>
<P> 3.OMT方法</P>
<P> OMT方法是1991年由James Rumbaugh等5人提出来的,其经典著作为“面向对象的建模与设计”。</P>
<P> 该方法是一种新兴的面向对象的开发方法,开发工作的基础是对真实世界的对象建模,然后围绕这些对象使用分析模型来进行独立于语言的设计,面向对象的建模和设计促进了对需求的理解,有利于开发得更清晰、更容易维护的软件系统。该方法为大多数应用领域的软件开发提供了一种实际的、高效的保证,努力寻求一种问题求解的实际方法。</P>
<P> 4.<a href="200602271429302.html" tppabs="http://www.itisedu.com/phrase/200602271429302.html" target="_new">UML</a>(<a href="javascript:if(confirm('http://www.itisedu.com/phrase/200604231301515.html \n\nThis file was not retrieved by Teleport Pro, because it was unavailable, or its retrieval was aborted, or the project was stopped too soon. \n\nDo you want to open it from the server?'))window.location='http://www.itisedu.com/phrase/200604231301515.html'" tppabs="http://www.itisedu.com/phrase/200604231301515.html" target="_new">Unified Modeling Language</a>)语言</P>
<P> 软件工程领域在1995年~1997年取得了前所未有的进展,其成果超过软件工程领域过去15年的成就总和,其中最重要的成果之一就是<a href="200604231300125.html" tppabs="http://www.itisedu.com/phrase/200604231300125.html" target="_new">统一建模语言</a>(UML)的出现。UML将是面向对象技术领域内占主导地位的<a href="javascript:if(confirm('http://www.itisedu.com/phrase/200604231301285.html \n\nThis file was not retrieved by Teleport Pro, because it was unavailable, or its retrieval was aborted, or the project was stopped too soon. \n\nDo you want to open it from the server?'))window.location='http://www.itisedu.com/phrase/200604231301285.html'" tppabs="http://www.itisedu.com/phrase/200604231301285.html" target="_new">标准建模语言</a>。<BR>UML不仅统一了Booch方法、OMT方法、OOSE方法的表示方法,而且对其作了进一步的发展,最终统一为大众接受的标准建模语言。UML是一种定义良好、易于表达、功能强大且普遍适用的建模语言。它融入了软件工程领域的新思想、新方法和新技术。它的作用域不限于支持<a href="javascript:if(confirm('http://www.itisedu.com/phrase/200604241244195.html \n\nThis file was not retrieved by Teleport Pro, because it was unavailable, or its retrieval was aborted, or the project was stopped too soon. \n\nDo you want to open it from the server?'))window.location='http://www.itisedu.com/phrase/200604241244195.html'" tppabs="http://www.itisedu.com/phrase/200604241244195.html" target="_new">面向对象的分析与设计</a>,还支持从<a href="200603062220345.html" tppabs="http://www.itisedu.com/phrase/200603062220345.html" target="_new">需求分析</a>开始的软件开发全过程。</P>
<P><STRONG>五、面向对象的模型</STRONG></P>
<P><STRONG> ·对象模型</STRONG></P>
<P> 对象模型表示了静态的、结构化的系统数据性质,描述了系统的静态结构,它是从客观世界实体的对象关系角度来描述,表现了对象的相互关系。该模型主要关心系统中对象的结构、属性和操作,它是分析阶段三个模型的核心,是其他两个模型的<a href="200603061723295.html" tppabs="http://www.itisedu.com/phrase/200603061723295.html" target="_new">框架</a>。</P>
<P> 1.对象和类</P>
<P> (1) 对象。<BR> 对象建模的目的就是描述对象。</P>
<P><IMG src="2006310222059975.gif" tppabs="http://www.itisedu.com/manage/Upload/image/2006310222059975.gif" border=0></P>
<P> (2) 类。<BR> 通过将对象抽象成类,我们可以使问题抽象化,抽象增强了模型的归纳能力。</P>
<P><IMG src="2006310222117338.gif" tppabs="http://www.itisedu.com/manage/Upload/image/2006310222117338.gif" border=0></P>
<P> (3) 属性。<BR> 属性指的是类中对象所具有的性质(数据值)。</P>
<P> (4) 操作和方法。</P>
<P> 操作是类中对象所使用的一种功能或变换。类中的各对象可以共享操作,每个操作都有一个目标对象作为其隐含参数。<BR> 方法是类的操作的实现步骤。</P>
<P> 2.关联和链<BR> 关联是建立类之间关系的一种手段,而链则是建立对象之间关系的一种手段。</P>
<P> (1) 关联和链的含义。<BR> 链表示对象间的物理与概念联结,关联表示类之间的一种关系,链是关联的实例,关联是链的抽象。</P>
<P><IMG src="2006310222134596.gif" tppabs="http://www.itisedu.com/manage/Upload/image/2006310222134596.gif" border=0></P>
<P> (2) 角色。<BR> 角色说明类在关联中的作用,它位于关联的端点。</P>
<P> (3) 受限关联。<BR> 受限关联由两个类及一个限定词组成,限定词是一种特定的属性,用来有效的减少关联的重数,限定词在关联的终端对象集中说明。<BR> 限定提高了语义的精确性,增强了查询能力,在现实世界中,常常出现限定词。</P>
<P><IMG src="2006310222153723.gif" tppabs="http://www.itisedu.com/manage/Upload/image/2006310222153723.gif" border=0></P>
<P> (4) 关联的多重性。<BR> 关联的多重性是指类中有多少个对象与关联的类的一个对象相关。重数常描述为“一”或“多”。<BR> 图10-8表示了各种关联的重数。小实心圆表示“多个”,从零到多。小空心圆表示零或一。没有符号表示的是一对一关联。</P>
<P><IMG src="2006310222213238.gif" tppabs="http://www.itisedu.com/manage/Upload/image/2006310222213238.gif" border=0></P>
<P> 3.类的层次结构<BR> (1) 聚集关系。<BR> 聚集是一种“整体-部分”关系。在这种关系中,有整体类和部分类之分。聚集最重要的性质是传递性,也具有逆对称性。</P>
<P><IMG src="2006310222239882.gif" tppabs="http://www.itisedu.com/manage/Upload/image/2006310222239882.gif" border=0><BR> 聚集可以有不同层次,可以把不同分类聚集起来得到一颗简单的聚集树,聚集树是一种简单表示,比画很多线来将部分类联系起来简单得多,对象模型应该容易地反映各级层次,图10-10表示一个关于微机的多极聚集。</P>
<P> (2)一般化关系。<BR> 一般化关系是在保留对象差异的同时共享对象相似性的一种高度抽象方式。它是“一般---具体”的关系。一般化类称为你类,具体类又能称为子类,各子类继承了交类的性质,而各子类的一些共同性质和操作又归纳到你类中。因此,一般化关系和继承是同时存在的。一般化关系的符号表示是在类关联的连线上加一个小三角形,如图10-11 </P>
<P><IMG src="200631022291816.bmp" tppabs="http://www.itisedu.com/manage/Upload/image/200631022291816.bmp" border=0></P>
<P> 4.对象模型<BR> (1)模板。模板是类、关联、一般化结构的逻辑组成。<BR> (2)对象模型。</P>
<P> 对象模型是由一个或若干个模板组成。模板将模型分为若干个便于管理的子块,在整个对象模型和类及关联的构造块之间,模板提供了一种集成的中间单元,模板中的类名及关联名是唯一的。</P>
<P><STRONG>·动态模型</STRONG></P>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -