基于分层架构的WEB系统框架分析

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:augsep
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:应用系统框架可以为快速构建企业级WEB应用提供强有力的支持。该文分析了一个具有复用价值的WEB系统框架所应具备的结构和功能特点,并根据面向对象设计理念及分层架构设计模式提供了一个可行的实现方案,并将此设计方案进行了分析和总结。
  关键词:DAL;BLL;UI;白盒框架;分层架构
  中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)24-5551-02
  企业中许多WEB信息管理系统同属于针对关系型数据库的,并且有相当一部分功能需求是重复的。比如组织结构管理、通知公告发布,甚至是访问权限控制等。出于对软件复用原则和开发效率等方面的考虑,可以采用相同的系统框架,再进行具有各自业务特点的功能开发,这样可以避免重复工作,保证项目进度。
  综合来看,应该将这类管理信息系统的共同需求提取出来,设计开发一个结构合理、层次分明、可维护性和可复用性较高的开放型的WEB系统框架。
  1 框架分析
  1.1 框架
  框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架。前者是从应用方面而后者是从目的方面给出的定义。其具有以下的特点:
  1)它是一个功能类的集合,类之间可以相互协作,为业务子系统提供服务。
  2)它包含了具体类和抽象类,这些类定义了标准的接口、对象间的交互作用和系统的相关常量。
  3)为了利用、自定义或扩展框架的服务,通常需要框架的使用者去定义已存在的框架类的子类。
  4)框架中定义好的类只提供给用户自定义的类调用,而从不调用用户自己定义的类。
  框架可分为白盒(White-Box)与黑盒(Black-Box)两种框架。
  基于继承的框架被称为白盒框架。所谓白盒即具备可视性,被继承的父类的内部实现细节对子类而言都是可知的。利用白盒框架的应用开发者通过衍生子类或重写父类的成员方法来开发系统。子类的实现很大程度上依赖于父类的实现,这种依赖性限制了重用的灵活性和完全性。但解决这种局限性的方法可以是只继承抽象父类,也就是基类,因为抽象类基本上不提供具体的实现。白盒框架是一个程序骨架,而用户衍生出的子类是这个骨架上的附属品。
  基于对象构件组装的框架就是黑盒框架。应用开发者通过整理、组装对象来获得系统的实现。用户只须了解构件的外部接口,无须了解内部的具体实现。另外,组装比继承更为灵活,它能动态地改变,继承只是一个静态编译时的概念。
  在理想情况下,任何所需的功能都可通过组装已有的构件得到。事实上,可获得的构件远远不能满足需求,有时通过继承获得新的构件比利用已有构件组装新构件更容易,因此白盒和黑盒将同时应用于系统的开发中。不过白盒框架趋向于向黑盒框架发展,黑盒框架也是系统开发希望达到的理想目标。
  1.2 分层架构
  分层架构是一个层次结构,每一层为上层服务,并作为下层的客户。在一些分层系统中,除了一些精心挑选的输出函数外,内部的层只对相邻的层可见。这样的系统中,构件在一些层实现了虚拟机(对实现过程的不可见)。连接件通过决定层间如何交互的协议来定义、拓扑约束,包括对相邻层间交互的约束。
  这种风格支持基于可增加抽象层的设计。允许将一个复杂问题分解成一个增量步骤序列的实现。由于每一层最多只影响两层,同时只要给相邻层提供相同的接口,允许每层用不同的方法实现,为软件复用提供了强大的支持。
  我们经常提到的三层架构就属于分层架构设计的一种。它是信息管理系统最为常见的设计模式。总体思想就是将整个业务应用划分为:数据访问层(DAL)、业务逻辑层(BLL)、用户界面层(UI)。层与层的职责没有重叠,上层只能依赖于下层。这样的系统,结构非常明确,可以很容易的用新的实现来替换原有层次的实现,大大增加了系统的可复用性,降低了后期的维护成本。
  2 实现目标
  鉴于目前遇到的需求基本都属于中低等规模的信息管理系统开发,综合考虑开发难度、可维护性、可扩展性等因素,开发一个介于白盒(类复用)与黑盒(功能复用)之间的基于分层架构设计模式的框架较为适宜。框架主要实现以下几个目标:
  1)实现类、组件、代码甚至设计的最大化重用。
  2)框架结构尽可能合理、简单,符合架构设计的单一职责原则和单向调用原则,即框架各层的职责单一,只能上层依赖于下层,不能上下层互相依赖。
  3)框架要有灵活的扩展性,可满足二次开发要求。但是在进行二次开发时,对框架只能扩展不能修改,即满足软件架构设计思想中的开放-关闭原则。
  4)框架具备一定的配置开发能力,部分通用的功能可适用大部分信息管理系统。并且在针对不同的存储设备时,通过修改配置而不需要修改代码就可以适应新的运行环境。
  3 结论
  以上是一种基于分层架构的WEB系统框架的分析、设计与实现的全过程。该框架层次分明、结构简单,对每层都有一个抽象,派生类强制实现规定的抽象方法,规范了编码过程,提高了框架的可维护性。根据信息管理系统的共同需求,提供了部分通用的框架功能。所以,不论在白盒框架部分还是在功能方面都具有一定的可复用性。
  参考文献:
  [1] Varallo V.ASP.NET 3.5商用开发架构精解[M]. 刘建宁,译.北京:清华大学出版社,2010.
  [2] Shalloway A.设计模式解析[M].徐言生,译.2版.北京:人民邮电出版社,2010.
  [3] 蔡敏,徐慧慧,黄炳强. UML基础与Rose建模教程[M].北京:人民邮电出版社,2006.
其他文献
目的探讨密闭式吸痰结合恒速小量持续气道湿化对急性呼吸窘迫综合征的影响。方法选择2016年8月至2018年8月本院收治的急性呼吸窘迫综合征患者108例,按照随机数字表法分为两组,各54例。对照组行开放式吸痰和间断气道湿化干预,观察组行密闭式吸痰结合恒速小量持续气道湿化干预。对比两组插管后24 h、72 h、120 h痰液黏稠度、痰痂形成情况及吸痰后不同时间血氧饱和度变化,并统计两组不良反应发生率。结
要提高造林成活率,就要保证各项关键措施的具体落实,包括造林整地、苗木选择、运输栽植和补植抚育等等。  1 整地技术  造林作业施工的第一个环节是造林整地,整地的时间、方法、标准对造林质量有直接影响。造林整地的目的是改善土壤理化性能,达到蓄水保墒,有利于幼苗生根成活。在造林生产中要根据造林的林种、树种、立地条件和气候条件、劳动力情况等多种因素综合考虑,做到因地制宜,实事求是。  1.1 整地时间一般
伴随着我国城市的扩张以及人口的增加,城市中产生的垃圾量也在不断攀升。面对这种状况,传统的垃圾转运体系已经无法满足当前城市发展的实际需求,为了建造干净城市,提升城市形
目的探讨急性心肌梗死(AMI)合并束支传导阻滞患者的临床特点及预后。方法纳入近10年于清华大学第一附属医院行冠状动脉(冠脉)造影检查的522例AMI患者,分为AMI合并左束支传导
黑龙江省要实现由农业大省向农业强省转变,在这一转变过程中,必须准确把握农业现代化发展的基本规律,推进农业现代化建设。农业现代化不能只依靠农民自身。尊重农民意愿是支持
农业社会化服务是农业现代化的重要标志,构建农业社会化服务体系是推进现代农业发展基础工程和必由之路。近年来,绥棱县把推进农业社会化服务体系建设作为发展现代农业的重要举
回迁户鲁老太所在的小区,原是她所在城市最大的一个城中村。鲁老太所在的城市,经几代规划师之手.不断扩容增大。规划师关注的是如何拓展这个城市的物理空间,而鲁老太关心的则是过
【摘 要】在本文中,作者将对提高东北地区玉米产量过程中遇到的问题做出分析,并提出几点实现东北地区玉米高产的栽培技术措施,希望可以为有关部门提供帮参考。  【关键词】东北区域;玉米高产;栽培技术  [Abstract] In this article, the author will to increase maize yield in northeast China’s problems in t
[摘 要]玉米是我国主要的农作物之一,它的生长以及收获都与我国的农业发展有很大的关系,但是,有很多的因素会影响它的生长,导致它的产量严重下降,倒伏就是其中影响最大的一种因素。本文主要会讲述玉米的倒伏原因以及解决的办法。  [关键词]玉米;倒伏;发展  [Abstract] Corn is one of the major crops in our country. However, there a
摘 要:大豆若要取得优质高产,需要各项配套技术措施的支持,就此,本文进行了较为详细的论述,供参考。  关键词:大豆;优质高产;栽培技术  大豆是我国农业生产方面的一种重要的经济作物也是我省的主栽品种之一。提升大豆栽培技术对提高大豆的产量、提升品质、降低成本,进一步增加农民的收入,具有很大的促进作用。因而,作为农业科技工作者,就要把进一步提高大豆栽培技术水平作为一项重要课题进行研究,力争使大豆优质高