摘要:历史的时针进入21世纪以来,我国迎来了信息技术快速发展时期,伴随着信息技术的飞速发展,Internet的发展与完善使我国获取了世界范围内的大量信息基础设施。软件设计过程中所运用的设计模式也得以初步显现。设计模式(Designpattern)指的是一种运用范围广泛且基于分类编码以及代码设计的一种总结形式。在软件设计中运用设计模式可有效地提高代码的使用率,不仅确保了代码的稳定性而且更加的易于被人们理解并接受。设计模式在当下的今天已经被广泛的用于到各类软件的设计中去。本文接下来将围绕设计模式及其在软件设计中的运用展开分析和讨论。
【关键词】设计模式;软件设计;运用
设计模式的功能主要是针对面向对象进行设计的过程中频繁出现的设计中反复出现的设计问题给出具体且行之有效的解决方案。设计模式概念诞生于上世纪九十年代,是由ErichGamma等人从建筑设计领域引入到计算机领域内的。在当下有关于设计模式尚存许多有争议的话题,但因其可以给出一套完整的软件设计公共语言,使得一些相关的工作人员能够分享高端设计大师们的宝贵经验,这种争议的声音也就逐渐趋于平静。说到设计模式的作用还远不止以上那些,其最为让人称道的是软件的重构提供了目标。
1设计模式相关概述
追溯设计模式的起源其是一种源于建筑学的概念,被导入到计算机领域之后其主要的功能是记录软件开发人员发觉出的一系列共性问题以及软件开发人员经验证所得出的成功解,并且理清特定上下文所表现出来的问题及其与之对应的解决方案之间的联系。本文所提及的软件设计模式当前多是用于明确设计模式与另外的面向对象设计方式的关系,并且得出两者之间所适应的范围等等。
2设计模式的具体分类
设计模式的分类大体可以分为行为型、创建型以及结构型。其中各个分支又可以进行进一步的细分。行为型模式可细分为以下几种:备忘录模式、迭代器模式、解释器模式、观察者模式以及中介者模式。创建型模式可细分为以下几种:原型模式、单例式模式、建造模式、抽象工厂以及工厂方法模式。结构型模式可细分为以下几种:享元模式、组合模式、桥模式、外观模式以及装饰模式。
3设计模式在软件设计中的运用
当下国内的软件设计模式普遍都是运用于两个层面。首先,待到整个软件系统结构搭建初步完成后,可以及时的加入满足特殊需求的组件以及给予模块指定的设计使其在功能上更加灵活。软件设计模式本身就具有明显的复杂性,这也就使其无法用于相关具体的软件设计,一种原因是由于设计模式在运用的过程中得不到指导,另一种原因是软件设计模式所对应的设计师在设计的过程中没能够正确的把握设计方向。3.1设计模式的一系列步骤为了使设计模式的效果达到最佳,应充分的遵照下列步骤进行:(1)抽象化有待进行解决的种种问题,类型实施合理规划拆分。(2)针对问题所属类型采取适用于这一类型的设计模式。(3)规划问题并进行相应的模式匹配。并且把问题与选择的模式两者进行对比得出相互间共同存在的特性。针对需要解决问题所涉及的整体区域进行所有类及其对应的模式进行通盘归纳,在此过程中一旦发现所采用的设计模式并不适合立即重新返回第三步进行重新设计。(4)对所采用的设计模式进行变体,所采用的方式可以是对初始结构拓展或修正,以便及时的解决当中所存在的问题。(5)对所涉及到的软件体系进行结构细化使其进一步完善。(6)对设计质量实施度量。3.2设计模式选取在软件设计过程中设计模式的选取至关重要,选取恰到好处的软件设计模式,一般要充分结合以下几点因素。(1)事先总结出在设计进行过程中哪些因素是非固定存在即可以变化。(2)充分考虑设计模式对所遇到的问题的解决方式,并且分析所给出的解决方式是否行之有效。(3)明确反复进行检查的原因是什么,所选用的设计模式是否可以很好地解决此类问题。(4)对设计模式的主要方向实施浏览。(5)需要对与目相关的模式进行研究。(6)清晰地了解并掌握模式是如何实现相互关联的。3.3设计模式的应用待到软件设计模式选定以后,在执行的过程中需要严格遵照科学方式方法进行设计。(1)将其所设计的模型实施详细浏览。(2)深入的对协作、结构以及参与者三部分进行研究探讨。(3)仔细观察代码示例部分以及观察相关的一系列案例。(4)选取设计模式相关参与者名字,以使其在全文的运用上更具鲜明的意义。(5)对设计中所涉及的类进行定义。第六,对应用中的操作名称采取在定义模式中专用,良好的实现在设计模式中的责任与协作的操作。
4结语
进入新世纪以来,在软件设计面向对象领域工作者们所收获的最有意义的成就就是设计模式概念问世与其所得到的稳定发展。从设计模式由建筑领域被引入计算机领域以来,设计模式概念被提出至今其凭借着表达的清晰性和简洁性备受广泛关注,自身拥有的强大适用性也得到了深入的发掘。实践是检验一切的唯一标准,反观设计模式从出现至今这一路走来,设计模式在软件设计中的运用经受住了一次又一次的检验,时光荏苒相信随着面向对象理论的发展,设计模式在软件设计中的运用也定会愈加完善。
作者:李瑞雪