- 1、本文档共53页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[UML第13章设计软件构件
第13章 设计软件构件 13.1 构件的构成与表达方式 13.2 构件与对象的相似性和区别 13.3 构件技术简介 13.4 构件的大小与分类 13.5 如何用好构件 13.6 使用构件的优点和缺点 本章讲述的不是简单组件对象,而是讲述有关大型的软件构件。组件对象表示实现世界合成对象的组成部分,它是在继以前的普通对象后,生活中丰富多彩的对象。 13.1 构件的构成与表达方式 一般人对于构件的了解是: (1)构件比对象大。 (2)构件可以是对象,但是从另一方面来说,它可以再大些。它可以是一个DLL(动态链接库)。 (3)确切地说构件不是对象。它通常较大较复杂,可重用性更强。 (4)构件类似对象,因为它们的组成和操作性由接口支持。 (5)凡是支持IDL(接口定义语言)的就是构件。也可以认为它是一个对象。 (6)构件是二进制代码,它不需要被编译。 (7)对象能被实例化。构件不能被实例化。 (8)构件是代码的独立单元,这些代码提供特殊的功能。 构件所需的5个特征有:接口、类型、语义、限制和非功能性属性。 接口 一个构件的接口是一组构件与其环境进行交互的界面或端口,接口提供了构件与其他构件交互的方法,每个接口代表了该构件与其环境进行交互作用的一个作用点。 类型 构件的类型定义了可重用块的功能特性,是对封装特定功能的可重用块的抽象描述 。 语义 构件的语义描述了构件行为特征的高层模型。 限制 构件限制既可以描述系统具有的属性,也可以用来申明系统可能发生的一些例外。通过定义构件的限制,可以确保构件内各部分之间建立正确的依赖关系,确定构件的使用边界。 非功能性属性 构件的非功能性属性包括安全性、可移植性、性能等。非功能属性通常都无法直接从构件的行为描述中推导出来。在体系结构中应尽早定义这些特性。 构件的表达形式如图13-1所示。 13.2 构件与对象的相似性和区别 构件接口和它的实现之间的极大的区别促进了封装。 类能被实例化为对象,每个都有它自身的可变状态,另一方面,构件有助于避免维护保持不变的状态。 构件接口中的操作的契约属性与类的操作属性一样。 面向对象不感知对象周围的“环境”。 基于构件的软件与面向对象软件都有一个重要的目的:可重用性。 虽然语言标准可能为每个类要求一组基本操作,面向对象本身并不要求一个类满足运行阶段环境的要求。 构件在运行阶段常常是分布执行的,和类相比,它们与对象更相似些。 在运行阶段,某些构件标准允许另一个软件查询构件有关它实现的操作。 有些构件与预置操作一起出现,预置操作是指在开发阶段建立的运行阶段激活的缺省值。 13.3 构件技术简介 软件系统的复杂性不断增长、软件人员的频繁流动和软件行业的激烈竞争迫使软件企业提高软件质量、积累和固化知识财富,并尽可能地缩短软件产品的开发周期。于是集软件复用、分布式对象计算、企业级应用开发等技术为一体的“基于构件的软件开发”(CBSD,Component Based Software Development)应运而生 13.3.1 构件技术的概念及发展 软件构件是指应用系统中可以明确辨识的构成成分,包括源代码、需求、系统和软件的需求规约、系统和软件的构架、文档、测试计划、测试案例和数据以及其他开发活动有用的信息。 13.3.2 当前的三种构件标准规范 Sun的J2EE。在J2EE中,Sun给出了完整的基于Java语言开发的面向企业分布应用的规范。其中,在分布式互操作协议上,J2EE同时支持RMI和IIOP,而在服务器端分布式应用的构造形式上,则包括了Java Servlet、JSP(Java Server Page)、EJB等多种形式,以支持不同的业务需求,而且Java应用程序具有“Write once,run anywhere”的特性,使得J2EE技术在分布计算领域得到了快速发展。 OMG的CORBA。CORBA CCM(CORBA Component Model)技术是在支持POA的CORBA规范(版本2.3以后)的基础上结合EJB当前规范发展起来的。CORBA构件模型是OMG组织制定的一个用于开发和配置分布式应用的服务器端构件模型规范,它主要包括如下三项内容: (1)抽象构件模型。 (2)构件容器结构。 (3)构件的配置和打包规范。 Microsoft DNA 2000。Microsoft DNA 2000(Distributed interNet Applications)融合了当今最先进的分布计算理论和思想,如事务处理、可伸缩性、异步消息队列、集群等内容。DNA使得开发可以基于Microsoft平台的服务器构件应
文档评论(0)