软件模式的现状分类研究

2021-09-10 08:46:00张峰
红豆教育 2021年10期
关键词:软件开发

张峰

【摘要】“模式”二字最早源于建筑行业,随着社会的飞速发展,模式的运用范围也逐渐深入到各个领域。如今,模式已经成为了软件领域内的关键词,其在软件领域的影响远远超过了在建筑行业的影响。软件模式是软件行业的一个新兴名词,其对软件开发产生了重要的影响。在信息技术飞速发展的当今社会,加深对软件模式的了解是十分必要的。本文以软件模式为主要研究对象,主要从软件的几个模式来开展探讨。

【关键词】软件模式;软件领域;软件开发

一、软件模式的作用

所谓“模式”是指遵从某种规律反复出现的思维方式,而软件模式便是将这一概念应用到软件开发领域,以此来作为软件开发的指导思路。软件模式的核心思想在于对系统的模式进行再次运用。

在信息技术飞速发展的当今社会,软件行业对于软件模式的运用也在逐渐深入。实践证明,软件模式的应用对软件开发有着很大的促进作用,这种作用主要表现为两个方面:1.软件模式是软件工程师在设计、管理和组织软件等实践中经验的提炼,是重复使用软件设计方法的有力工具。软件模式就好比拳击中的组合拳,它为软件工程师提供了大量软件开发的思维方法,如通过运用软件模式能使得复杂的系统变得简洁。2.软件模式不仅为人们在设计软件过程中提供了一套简洁的设计、组织和管理软件方面的词汇,它还为人们提供了一个描述抽象事物的规范标准。信息传达准确、及时与否与软件项目的成功有着紧密的联系,由此可见,在软件开发中交流是十分重要的,而软件模式的这种规范标准促进了软件开发过程中的交流,从而促进软件项目的成功。

二、软件模式分类

“模式”是在八十年代时期被Kent Beck等人引用到软件开发领域中,目前,软件中已经有很多种类的模式,如设计模式、架构模式等。下面我就针对软件开发中的这些模式进行分析。

1.设计模式

设计模式描述普遍存在在相互通讯的组件中重复出现的结构中,设计模式是软件模式中最典型的一种模式设计模式能够使人们更加简单、方便地复用成功的设计和体系结构。

一般情况下,设计模式主要是指1995年GOF提出的23种模式,他首次将设计模式提升到理论的高度。直至发展到今日,在可复用面向对象软件的发展进程中,虽然有很多新的设计模式在不断地出现,但是GOF提出的23种模式的理论依旧处于无法超越的地位。按大范围的模式种类,可将23种设计模式的分为以下几种:①创建型设计模式,如工厂方法模式(Factory Method)、建造模式(Builder)、原型模式(Prototype)等,这些模式在汽车制造业、快餐业和行政机构中都得到了充分的运用;②结构型设计模式,如装饰模式(Decorator)、桥梁模式(Bridge)等,这些模式在工具、零售业和银行业中都可以找到;③行为型模式,如模板方法模式(Template Method)、命令模式(Command)、访问者模式(Visitor)等,这些模式在运用到了餐馆订餐、音乐和自动售货机中。

近年来,设计模式受到了软件行业的青睐,其特征在于将模式合并分解再创造出新的模式,这样的变化能使得软件开发的国战。

2.架构模式

架构模式是一个较为空泛的概念,本文所讲述的“架构模式”主要是指软件实现的框架,其描述的是软件开发过程中的总体纲要和基本架构,在软件程序开发过程中,架构模式就是指模块之间或子系统之间的职责关系,并给出将它们自制在一起的法制,称为系统模式。架构一般强调设计复用,如MVP、总线架构、元数据模式等整体或局部架構。

架构模式常常被分为以下几种:①模块结构型(From Mud to Structure)。这种架构模式能帮助架构师合理地划分系统,避免系统对象的混杂;②分散系统型(Distributed  Systems)。这种模式主要是为分散式系统提供完整的结构设计,在软件开发中创设完整地构架;③人机互动型(Interactive  Systems)。这种架构模式支持包含有人机互动界面的架构设计,如MVC模式;④Adaptable  Systems型。这种架构模式支持软件系统适应各种变化,如技术和软件功能需求的变化。

3.代码模式

代码模式是软件模式中最低层的模式,其和代码或软件开发语言有着紧密的联系,是实现某种具体功能的最佳方式。例如JAVA要想实现飘带文字的功能便可以利用代码模式,较为著名的代码模式案例有双检锁模式(Double-Check Locking)等

参考文献:

[1]彭鑫,赵文耘,夏宽理,沈铖;基于Java的软件再工程支持工具研究[J];计算机工程与应用;2003年18期

[2]张堃;黄庄庄;从C/S遗留系统升级到Web环境的软件再工程[A];第九届全国青年通信学术会议论文集[C];2004年06期

[3]王存思;软件模式理论的研究及其在开发TroBus中的应用[D];福州大学;2002年

[4]武传宇;基于PC+DSP模式的开放式机器人控制系统及其应用研究[D];浙江大学;2002年05期

[5]郭艳玲,赵万生,董本志,乔世坤,徐达丽;数控发展的趋势──开放式体系结构数控系统[J];东北林业大学学报;2000年05期

猜你喜欢
软件开发
基于安卓平台的移动式教学模式研究
嵌入式系统软件开发技术探析
浅谈分层技术在软件开发中的应用
Java软件开发问题探究
软件开发中JAVA编程语言的应用
浅谈程序设计的方法
商情(2016年39期)2016-11-21 09:58:50
信息安全环境下的计算机软件开发研究
计算机软件开发中的分层技术运用
建模技术在软件开发中的应用
软件开发中数据库设计理论的实践