软件体系架构情势在J2EE中的操纵[Java编程]
本文“软件体系架构情势在J2EE中的操纵[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
本文介绍了软件体系架构产生的后台和架构情势的基本理论.重点介绍管道与过滤器体系架构情势的构造,实现,优缺陷等,然后以J2EE的Servlet Filter为例举行解析它是怎样利用该架构情势的,最后简单阐述了在别的J2ee利用中(Jboss和Axis)的实践.
软件体系架构
1、软件体系架构产生后台
在阅历60年代的软件危急之后,令人们开始器重软件工程的研究.来自差别利用范畴的软件专家总结了大量的有代价的知识. 当初,人们把软件计划的重点放在数据构造和算法的挑选上,如Knuth提出了数据构造+算法=程序. 但是随着软件系统规模越来越大、越来越复杂,使软件系统的架构越来越重要.软件危急的程度日益加重,现有的软件工程办法对此显得力不从心.关于大规模的复杂软件系统来说,软件体系架构比起对程序的算法和数据构造的挑选已经变得明显重要得多.在此种后台下,人们熟习到软件体系架构的重要性,并认为对软件体系架构系统、深化的研究将会成为提高软件生产效率和办理软件危急的最有但愿的途径. 这时对软件体系架构的研究如雨后春笋般,呈现了万马齐喑的现象,如Rational公司提出了"以架构为中央"的统一软件开辟历程(RUP).
2、软件体系架构情势
软件计划的一个核心问题是可否利用反复的体系架构,即可否到达体系架构级的软件重用.也就是说,可否在差别的软件系统中,利用同一体系架构.基于这个目的,很多学者们开始研究和实践软件体系架构的情势问题.在<Pattern-Oriented Software Architecture (面向情势的软件体系架构) >中初次提出了8种体系构造情势: 层(Layers)、管道和过滤器(Pipes and Filters) 、黑板(Black board )、代理者(Broker)、模子-视图-掌握器(Model-View-Controller)、表示-抽象-掌握(Presentation-Abstraction-Control)、微核(Microkernel)、映像(Reflection).
J2EE体系架构
目前,J2EE技术已经成为企业级利用的首选平台,基于J2EE技术构建的软件系统越来越多.J2EE代表着先进的软件体系架假想想,很多软件体系架构情势在J2ee中均被遍及利用,从本文起连续介绍各架构情势在J2EE中的利用.
管道与过滤器
1、概述
管道和过滤器(Pipes and Filters)体系架构情势是为处理数据流的系统供应的一种情势.它是由过滤器和管道构成的.每个处理步骤都被封装在一个过滤器组件中,数据通过相邻过滤器之间的管道举行传输.每个过滤器可以单独改正,功效单一,并且它们之间的次序可以举行配置.下图是管道/过滤器情势的表示图.一个典型的管道/过滤器体系构造的例子是以Unix shell编写的程序.Unix既供应一种标记,以衔接各构成部份(Unix的进程),又供应某种进程运行机会制以实现管道.另一个闻名的例子是传统的编译器.传统的编译器一向被认为是一种管道系统,在该系统中,一个阶段(包含词法解析、语法解析、语义解析和代码生成)的输出是另一个阶段的输入.
2、问题
假定你正在开辟一个必须处理或转换输入数据流的系统.把这样的系统作为单个组件实现是不简单的,这有几个缘由:系统必须由几个开辟人员同时举行合作开辟,整个系统任务自然就被分化为几个处理阶段,并且需求很简单变更.因此你就要通过替换或重新排序处理步骤来为将来的机动性作筹划.通过加入这样的机动性,采取现有处理组件构建是可以办到的.系统的计划特别是处理步骤的内部衔接,必须考虑以下因素:
将来系统的进级通过替换某些处理步骤,或重组步骤.
差别的语境中小的处理步骤要比大的组件更易于重用.
不相连的处理步骤不可同享信息.
存在差别的输入数据源,
可以用多种方法输出或存放终究后果.
以上是“软件体系架构情势在J2EE中的操纵[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |