安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

基于软件开发下外观模式的改进研究论文

5月1日 颜如初投稿
  外观模式是使用频率较高的软件设计模式之一。针对标准外观模式所存在的问题,本文提出了两种外观模式改进方案并结合实例进行研究。通过引入抽象外观类,让系统具有良好的可扩展性,满足开闭原则;通过对外观类实施单例化,可以确保外观对象的唯一性,节约系统资源。
  1引言
  设计模式在软件开发中应用日益广泛,它们是前人经验的总结与积累,每一种模式均是在多个软件项目中被反复使用、被多数人知晓,且经过规范的分类编目和整理的面向对象设计经验的总结。
  外观模式是使用频率较高的软件设计模式之一,在软件开发中应用非常广泛。根据单一职责原则,将一个大的软件模块(或子系统)进行分解可以降低整个系统的复杂性,提高单个模块(或子系统)的独立性和可复用性。通过引入外观角色,可以降低客户类与子系统类之间的耦合度,使之相互依赖关系降至最小,从而降低原有系统的复杂度。在没有外观角色的系统中,客户类需要与多个子系统类进行交互,系统耦合度较高;在引入外观角色之后,客户类只需要与外观类交互,再通过外观类间接调用子系统类,在外观类中封装了与子系统之间的复杂交互关系,从而降低系统的耦合度。
  但是,在标准的外观模式中存在两个问题:首先,标准外观模式没有提供抽象层,在增加、更换或者删除子系统类时需要修改客户类或者外观类的源代码,违背了开闭原则;其次,外观类维持了对多个子系统类的引用,在系统运行时,外观对象势必会占用较多的系统资源,需要对外观对象的数量进行限制。
  2外观模式的改进方案
  针对标准外观模式存在的问题和缺陷,本文提出了相应的改进方案,包括引入抽象外观类以及对外观类实施单例化。
  2。1抽象外观类的引入
  为了让外观模式能够符合开闭原则,引入抽象外观类来对外观模式进行抽象化改进。客户端针对抽象外观类进行编程,将所有的具体外观类作为抽象外观类的子类,如果需要更改业务需求,无须修改原有外观类,只需要增加一个新的具体外观类即可,由新的外观类来关联新的业务需求。通过使用配置文件,可以达到不修改任何源代码即可置换外观类的目的,如图1所示。
  2。2外观类的单例化
  在大多数情况下,为了节约系统资源,程序在运行时只需创建某个外观类的唯一实例。因此,可以将外观模式与单例模式联用,对外观类实施单例化,确保系统中只存在唯一一个外观对象并提供唯一的访问入口,可以降低系统资源的消耗。单例化后的外观类的结构如图2所示。
  在图2中,外观类Facade被设计为单例类,在其中定义了一个静态的Facade类型的成员变量instance,其构造函数为私有的(private),并通过一个静态的公有工厂方法getInstance()返回自己的唯一实例。
  3实例研究
  下面通过一个实例来说明如何在实际项目中使用改进后的外观模式。
  在某使用外观模式的文件加密模块的。初始设计方案中,FileReader类用于读取待加密的源文件、FileWriter类用于保存加密之后的文件、Cipher类用于实现数据的加密,EncryptFacade是一个加密外观类,它通过调用三个业务类中的方法实现文件读取、加密和保存的完整流程。
  3。1抽象化改进
  如果需要将原系统中的加密类Cipher改为NewCipher,势必会导致外观类EncryptFacade源代码发生修改,违背开闭原则。通过引入抽象外观类,重构后的系统设计方案如图3所示,在图3中使用了基于衍型的模式标注方法SBPN(StereotypeBasedPatternNotation)来对结构图中的设计模式信息进行标注。
  在图3中,客户类Client针对抽象外观类AbstractEncryptFacade进行编程,可将具体外观类类名存储在XML等格式的配置文件中,更换具体外观类时只需修改配置文件,无须修改源代码,符合开闭原则。
  3。2单例化改进
  为了节省系统资源,可以将EncryptFacade设计为单例类,改进之后的结构如图4所示。
  通过对外观类实施单例化,可以确保系统中有且仅有一个EncryptFacade类的实例,避免生成多个EncryptFacade对象,节约系统资源。
  4结束语
  外观模式是一种使用频率非常高的设计模式,在软件开发中应用广泛。针对标准外观模式存在的不足,本文提出了两种外观模式的改进方案:第一种方案通过引入抽象外观类,使得系统在增加、删除或者更换子系统类时无须修改已有类的源代码,可以对抽象外观类进行扩展来适应设计方案的改变,让系统满足开闭原则;第二种方案通过对外观类单例化,将外观模式与单例模式联用,确保在系统中只存在外观类的唯一实例,节约系统资源。通过上述改进,可以提高外观模式的适用性和有效性。
投诉 评论 转载

基于软件开发下外观模式的改进研究论文外观模式是使用频率较高的软件设计模式之一。针对标准外观模式所存在的问题,本文提出了两种外观模式改进方案并结合实例进行研究。通过引入抽象外观类,让系统具有良好的可扩展性,满足开闭……护士职业道德教育探讨论文1加强护士职业道德教育1。1形成崇高的护理职业思想形成较强的职业自豪感、荣誉感并献身护理事业是护理人员崇高的职业思想。随着医疗护理事业的不断发展,护理工作分工更细、……浅析论现代企业财务管理最优目标的确定1企业财务管理目标的内容企业财务管理目标,是指企业在财务管理在一定环境和条件下所应达到的预期结果,它是企业整个财务管理工作的定向机制、出发点和归宿。我国的财务管理目标经历……跨国公司与发展中东道主关系的讨价还价分析论文摘要:跨国公司与发展中东道主政府之间是一种动态的讨价还价关系,双方在合作的框架体系中博弈。跨国公司和东道主的利益分配能力取决于各自的讨价还价能力,而讨价还价能力随着双方所掌握的……小学教师实现高效教学的有效途径论文1前言小学教师是小学生知识学习和品格培养的关键因素,近年来随着经济社会的持续发展,对于教育教学质量的重视程度也越来越高,特别是新课程改革方案的出台和实施对小学教学质量也提……浅议多媒体教学应用策略【论文关键词】多媒体教学初中语文应用策略【论文摘要】近年来,多媒体教学受到了广大师生的关注,为了有效地提高教学质量,笔者结合教学实践从伴诗歌教学展美、激散文教学怡情这两方……浅议在小学体育教学中培养学生意志品质的策略摘要:本文作者根据自己的教学实践,论述了如何在小学体育教学中培养学生的意志品德的策略和措施。关键词:小学体育;意志品德;策略在小学体育教学中培养学生的意志品质,可以……描述逻辑范畴被还原之后的现象学品学网论文网论文频道一路陪伴考生编写大小论文,其中有开心也有失落。在此,小编又为朋友编辑了描述逻辑范畴被还原之后的现象学,希望朋友们可以用得着!不……信息工程专业论文在当前信息工程专业是较为热门的专业,那么该专业的同学应该如何写好论文内容呢?下面是小编分享给大家的信息工程专业论文,希望对大家有帮助。摘要:电子信息技术已经渗透到人们生产……公共政策分析课的论文导语:对于国家政治生活与长治久安而言,公共政策的制订是最为重要的部分。正确合理的公共政策将帮助政府机构更好地管理社会,服务民众。以下是小编整理的资料,欢迎阅读参考。摘要:……教学论文浅谈对小学语文课程与教材的思考一、课程改革是各国教育改革的大趋势针对新世纪对人才素质的要求,国际21世纪教育委员会在1996年提出学会认知、学会做事、学会共同生活、学会生存,并认为这是未来教育的四大支……学位论文选题的基本要求学位论文选题的基本要求是怎么样的?你知道吗?各位朋友们,我们看看下面吧!学位论文选题的基本要求根据《中华人民共和国学位条例》的规定,学位论文分为学士论文、硕士论文、博士论……
思考高职成人教育的社会意义与成人教育管理的改革论文现代传媒视野中的中国现代文学探讨关于民办高校志愿者队伍的调查与建设分析万里长城建造时卡夫卡的中国神小学语文教学中的传统文化教育播音主持在职业教育中的问题及对策作业成本的计算法论文建筑工程质量检测与监督(8篇)视觉文化与消费社会最新电视技术研究论文提纲数学实验手册应该怎样使用新型工业服务业论文例文

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利