- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1.1 应用软件结构 通常,应用软件的总体结构,可以分为两大部分:应用层和平台层,具体如下: 1.1 应用软件结构 平台层提供基础框架和大量可重用组件,这些组件以一定的接口方式暴露出来,供应用层来调用。平台层通常不提供与具体业务相关的逻辑处理,而是提供: 1)业务无关的框架/功能组件:比如日志、安全、线程池、连接池、告警监控等 2)多种业务之间可共用的机制:如工作流、事件通知机制等,这部分也与具体的业务无关。 应用层提供具体应用相关的逻辑处理部分,包括页面、应用逻辑、应用数据等。 1.1 应用软件结构 构建一个高度可重用的平台层,可以使应用开发只需集中精力关注业务逻辑,业务无关的功能组件和机制都由平台层提供,可以直接使用,这样极大简化了应用开发,缩短了软件交付周期,保障了软件质量。 而构建一个高度可重用的平台层,最核心的挑战就是设计和开发高度可重用的组件,提取应用的共性需求,简化接口,真正做到应用开发时可以直接拿来就用,而且非常好用。 1.2 组件定义 到底什么是组件呢?框架又是什么意思?类是组件吗?控件又指什么?元件、构件这些概念又如何理解? 1)对象:面向对象语言(Object-Oriented Language)是一类以对象作为基本程序结构单位的程序设计语言,指用于描述的设计是以对象为核心,而对象是程序运行时刻的基本成分。对象都具有状态和行为。对象,也被翻译为实例、物件。 1.2 组件 2)类:面向对象的概念。类是一种对包括数据成员、函数成员和嵌套类型进行封装的数据结构。在程序运行期间,由类创建成对象的过程,叫类的实例化。因此,对象是个运行期的术语,类是个编译期的术语。类本身就是可重用的直接实现手段。 3)组件:类本身是个细粒度的可重用实现,为了解决功能或机制层面更大粒度重用的问题,又引入了组件的概念。组件的英文是Component,其逻辑结构如下: 1.2 组件 1.2 组件 组件对外暴露一个或多个接口,供外界调用。组件内部由多个类来协同实现指定的功能。对于复杂的组件,会包括很多的类,还可能包含配置文件、界面、依赖的库文件等,组件也可以包含或者使用其它的组件,构成更大的组件。 一些特定范畴的组件,由软件厂家或者国际权威组织制定并颁布了组件规范,如COM、ActiveX、EJB、JavaBean等。 1.2 组件 补充说明: 在现代软件工程的开发过程中,软件组件只是一个辅助或支撑系统构造的一个过程。 软件组件开发主要是开发与维护系统构造过程中用到的组件。将软件组件作为一个单独的过程,目的是将组件作为构造软件的“零部件”。 随着软件技术的不断发展及软件工程的不断完善,软件组件将会作为一种独立的软件产品出现在市场上,供应用开发人员在构造应用系统时选用。 1.2 组件 4)控件:控件的英文是Control,控件就是具有用户界面的组件。有一种机制使开发者建立的控件能够在其它程序员的应用中轻而易举地插入,这便是VBA控件,OLE控件,OCX和最后ActiveX 控件产生的动机。因此,控件是组件的一个主要样本(并且历史上曾驱动着组件的开发),控件又不仅仅是唯一的一种组件。 5)元件:元件是个电子行业的术语,是电子元件的简称。也有一些软件借用这个术语,指特定的可重用控件。 1.2 组件 6)构件: 构件是系统中实际存在的可更换部分,它实现特定的功能,符合一套接口标准并实现一组接口。构件代表系统中的一部分物理实施,包括软件代码(源代码、二进制代码或可执行代码)或其等价物(如脚本或命令文件)。 通常认为,构件是特定软件开发环境中、满足指定规范的软件部分,其涵盖了设计、开发、物理实施等范畴。 补充:构件是面向软件体系架构的可复用软件模块。是可复用的软件组成成份,可被用来构造其他软件。它可以是被封装的对象类、类树、一些功能模块、软件框架(framework)、软件构架(或体系结构Architectural)、文档、分析件、设计模式(Pattern)等 1.2 组件 7)框架:框架的英文是Framework,框架是一个应用程序的半成品。框架提供了可在应用程序之间共享的可复用的公共结构。开发者把框架融入他们自己的应用程序,并加以扩展,以满足他们特定的需要。框架和工具包的不同之处在于,框架提供了一致的结构,而不仅仅是一组工具类。 8)子系统:子系统是个设计中使用的术语,英文是SubSystem。在软件总体架构中,按照功能划分子系统。通常一个子系统包含一个或多个进程。 1.2 组件 9)模块:模块是个设计中使
文档评论(0)