模式应用技术在应用软件开发中的应用
2017-12-28邓伟祺湖南省师范大学附属中学
邓伟祺 湖南省师范大学附属中学
模式应用技术在应用软件开发中的应用
邓伟祺 湖南省师范大学附属中学
在构建现代信息化社会时,软件成为了其中不可或缺的重要组成部分。软件行业经过这几十年的发展,积累了许多丰富的研究成果以及软件开发经验,但是其中也出现了许多问题。为了解决这些软件开发上问题,人们提出了软件复用技术,这项技术在当时被称为实现软件系统工程化的重要路径。然而,在现代应用软件开发过程中,随着用户的需求不断增大,软件也变得更为复杂,而软件复用技术也随着这些需求暴露出了许多问题,为了解决这些问题,人们对于模式应用技术进行了深入研究,并从其身上找到了解决的办法。
模式应用技术 应用软件 开发
在二十世纪六十年代当中,出现了软件危机,这场危机的主要表现是:软件开发成本过高、软件质量不理想、软件维护困难等,软件领域研究人员们为了解决这场危机,提出了软件复用技术,这项技术主要是为了解决应用软件开发过程中相同软件需要重复劳动的情况。软件复用技术的优点是:提高应用软件开发效率、保证开发软件可靠、减少维护软件费用等,软件复用技术对于软件系统工程化提供的重要的推动力。然而,随着应用软件的复杂性不断增加以及人们对于非功能性需求的问题,软件复用技术已经无法满足现代人们对于软件的需求,因此,人们提出了一种新的软件开发理论“软件模式”,软件模式技术又被称为模式应用技术,在软件工程领域中,很多学者都希望能够借助软件模式理论来解决软件复用问题。
1 模式应用技术的定义
在软件工程领域中,不同学者对于模式应用技术存在不同的定义,福勒对于模式的定义为:模式是一种解决问题的思路,它既然可以在一个实践环境中被适用,那么在其它环境中,它也可能适用于该环境;而Dirk Riehle认为:模式是一种只能在特定的环境中不断重复出现的具体形式。虽然这些学者对于模式应用技术的定义不相同,所选择的研究角度也不相同,但是,它们都对模式的概念进行了解释,模式是一种对于经验的抽象。因此,在广义上,我们可以将模式应用技术看做成:模式应用技术是根据应用软件开发过程中所积累的知识成果,并通过显式的方法对这些知识成果进行提炼,然后在对其进行抽象化总结。
2 模式应用在应用软件开发中的应用
2.1 层模式在应用软件开发中的应用
在应用软件开发过程中,层模式通过将应用软件系统分为子任务组,然后再将这些子任务组都分配到特定的抽象层次当中,这些抽象层次都是相对独立的,在软件工程领域中,这种抽象层次被称为独立层。每一个独立层都是由层名称、责任以及协作者而构成,层名称由管理者来制定,独立层的责任由两个方面组成:提供服务和委派任务。在层模式结构当中,可以分为最高独立层次和最低独立层次,每一个独立层既可以为上层独立层提供服务,也作为下层独立层的客户端。不同应用软件开发可以分为不同的独立层次,在完成这些独立层次的软件开发以后,再将这些独立层进行叠加,最下面的独立层为应用软件基础。在目前的模式应用技术中,层模式是最为成熟的模式应用技术,但是在对应用软件进行开发时,需要考虑一些可能导致软件开发失败的因素:在对软件源码进行修改时,不能直接作用于整个系统,可以在与修改内容相关的独立层进行修改,从而避免对其它独立层的影响;在独立层进行叠加时,应当保证每一层的接口稳定,对于接口可以采取规范化、系统化的处理方式。
2.2 管道和过滤器模式
管道和过滤模式在应用软件开发当中,是一种专门为处理数据流软件所提供的模式应用技术。管道和过滤器模式是由管道和过滤器构成,在软件开发过程中,每个处理步骤都会被存储到过滤器当中,然后数据流利用各个过滤器之间的管道进行传输,在对过滤器中进行修改时,每一个过滤器都可以独立修改,每个过滤器的功能单一。另外,还可以通过过滤器相互之间的顺序调换来进行配置。在利用管道和过滤器模式开发软件时,与层模式不同,每一个过滤器都是独立运行的部件,除了输入数据流或者输出数据流外,每一个过滤器都不会受到其它过滤器影响。
2.3 MVC模式
MVC模式作为一种应用软件开发模型,一般情况下,都应用在分布式软件开发中,它还能用于确定软件各个组成部分之间的关系。MVC把软件系统分为模型、视图、控制器三种部件,在MVC模式中,模型部件主要负责视图显示、控制器控制数据的存储;视图部件主要负责将模型数据和状态信息通过特定的形式表现给客户;控制器部件主要是负责处理客户与软件之间的交互操作,确保视图部件与模型界面之间能够相关联。
3 结语
在目前的应用软件开发领域当中,对于模式应用技术的应用十分广泛,模式应用技术能够为软件开发节约大量时间,并且,在应用软件开发过程中,将模型应用技术与软件复用技术进行结合,能够节省更多的开发时间。另外,随着软件工程领域学者们对模式应用技术的深入研究,未来软件开发领域中还会出现更多的模式,这些模式的出现能够对软件产业起到更好的推进作用。
[1]陈贵德.探析编程语言在计算机应用软件开发中的选择[J].信息与电脑(理论版).2013(01)
[2]陈澎.设计模式形式化方法分析和初步比较[J].计算机工程.2005(02)
[3]王文艳.软件复用技术在工业控制设备软件开发中的应用[D].天津师范大学2012