摘 要: 互联网迅猛发展的趋势之下,Web 应用及其技术框架也在不断优化和演进,Web 应用程序设计是一个复杂的体系和研究课题,需要投入大量的开发及维护成本,并还要实现对代码的规范化管理,这就在无形中增加了Web 应用程序的额外支出。为此,引入软件复用的思想和理念,针对 Web 应用程序创建一种快速开发平台——基于 MVC 模式的 ASP.NET 平台,在这个平台之下可以实现对 Web 应用代码的快速、灵活的复制,软件开发人员可以充分利用这一平台实现对代码的设计与自动生成,快速提升工作效率。
关键词: Web 应用程序;ASP.NET;开发;软件;设计
在互联网成为新时代的重要工具的趋势下,基于Web 的技术框架和体系不断演进和更新,然而由于Web 应用开发技术的复杂多样性特点,导致 Web 开发的成本大幅增加。为此,要创建针对 Web 应用程序的快速开发平台,利用这个平台的代码封装和抽象化的特点,缩短 Web 应用程序的开发周期,更好地降低应用程序开发成本。
1、ASP.NET 应用程序开发软件系统架构的特点及流程
基于 ASP.NET 的 Web 应用程序系统,主要是依照如下方式实现:(1)基于 ASP.NET 自身已经将页面显示和后台功能相隔离,为此,大多数后台程序都致力于建构多功能的数据处理类库。(2)ASP.NET 的页面部分被划分为两个部分,即:HTML 文件和 CSS 文件,其中:HTML 文件着重对 Web 页面的架构及层次设计;CSS 文件着重对 Web 页面的美工参数方面的设计和配置,如此可以较好地实现系统的模块化管理及重用。(3)数据库处理程序集中于后台,开发设计者可以将其分离为前台交互模块、数据专门提取模块。
ASP.NET 应用程序系统的工作流程为:在VisualStudio 中创建空白的 Web 应用项目源码——利用代码生成工具创建代码生成项目——定义数据库实体,并选择具体的代码模板——配置和选择相关的参数——生成最初的 Web 应用代码——将代码发布于VisualStudio 项目——调试开发与装配直至最终发布。
2、基于 MVC 设计模式下的 ASP.NET 应用程序模块设计
2.1、设计思路
在考虑MVC模式下的ASP.NET应用程序开发过程中,可以提炼和快速复制代码模板,以实现代码复用的效果。在实现代码复用的过程中,以代码生成器为核心程序,它负责将用户界面操作功能模块与生成最终代码模块相分离,使用户界面操作模块主要用于各类模板的配置管理和用户交互等功能,这就可以最大程度上扩展系统的可重用性。同时,在构造代码生成的程序时,可以将负责生成的类库与其他类库相分离,最终实现代码的构造。组件模板库是负责提供位于装配线上的完成各种功能的模块,可以较好地实现系统的扩展开发。另外,在组件模板库和代码生成器的各个模块之中,其通讯方式是通过对类库和函数的调用来实现的,这样可以较好地减少代码的复杂度,降低不同模块之间的耦合性,提升代码的可重用性。
2.2、ASP.NET 应用程序开发功能模块设计
(1)代码生成类库。这一模块主要是负责将组件模板库中的各类函数的功能充分利用起来,读取用户界面应用程序中的不同配置,利用各种 ASP.NET 资源生成器,生成 ASP.NET 代码。
(2)用户界面应用程序模块。这一模块的功能在于通过与用户的输入和输出交互性的操作,来实现对参数设置的提取和配置,从而最终生成 ASP.NET 代码,它是基于 C#.net 的前提之下,设计一种应用于桌面的应用程序,该应用程序是通过 Windows 窗体的方式,实现对数据的输出显示和应用操作。
(3)核心模板库。这一模块是组件模板库的基本组成内容,其主要功能是负责对各种对应于基本数据类型的类的定义,并为其他的类提供可扩展的接口定义。如:FieldDes 和 DataFieldView 两个类。
(4)数据库代码生成模板库。这一模块主要是负责数据库相关操作的定义。具体任务包括有数据库脚本的生成、数据库对象的定义、查询及修改等操作、数据库的链接等。
(5)界面组件代码生成模板库。这一模块主要是为代码生成类库提供各种不同的 Web 用户界面元素的生成代码。如:类 Date TimeField 主要是提供保存 DateTime 值的属性 Value。
3、ASP.NET 应用程序开发软件系统的应用与测试
3.1、代码生成器的展示
在 ASP.NET 应用程序开发软件系统之中,主要是实现基于数据表对象的代码和页面生成功能。具体包括有:(1)支持软件系统模板类的各种校验。(2)自动生成多记录和单记录类型的 Web 表单。(3)支持自动加载数据到视图,并将视图中的数据转换为对象。
(4)可以在 Web 页面中自动加载下拉菜单中的码表。
(5)在 Web 页面的非下拉菜单之中,当 label、textbox等控件尚未获取到对象时,则自动显示 text 而不会显示 value;一旦 label、textbox 等控件获取到某一特定的对象时,则会将 text 自动转换为 value 值。(6)生成的 ASP.NET 代码可以实现对关联字段的支持。(7)代码生成器可以辅助生成单记录和多记录的表单标签。
3.2、生成代码的展示
代码自动生成器提供了 Web 应用的支持,具体有以下内容:
(1)简单表单例子展示用户可以利用代码生成器在界面中指定生成ASP.NET 页面,在这个简单的用户数据编辑界面之中,可以顺序显示用户编号、姓名、性别等,并且可以根据用户的需求加以编辑和修改。
(2)Grid 浏览修改表单例子展示用户可以在界面中选择 Grid 浏览修改页面模板后生成 Asp.net 页面,可以由 Web 页面的用户直接浏览操作和修改。
3.3、系统应用分析
通过对原型系统的开发和测试,发现代码自动生成器生成的代码是否具备极高的可重用性还有待商榷,还需要对开发和改进代码生成器及相关模板库的开发与消耗进行合理的比较。同时,还应当在 ASP.NET 应用程序开发应用的过程中,优化和改进从 Web 应用中抽取相关数据并制作成页面的模板。另外,还要考虑到当页面模板越来越多、代码生成器的功能越来越强大时,如何让用户可以快速了解使用方法,并对相关页面模板采用合理的配置方法,要改进和优化用户界面与用户交互方式。
4、结束语
综上所述,随着 Web 应用技术的不断普及和发展,要针对开发基于 MVC 模式下的 ASP.NET 程序应用进行研究和探讨,要以软件代码复用的理念为核心,开发设计代码自动生成器,实现对代码模板的快速、简单的复制,从而实现对代码复用的灵活控制,并可以较好地满足用户对页面模板的使用与修改。
参考文献
[1] 孙玉钰. 基于. NET组件技术的插件式框架的研究[J]. 计算机应用与软件, 2009, 26(6): 143-145.
[2] 冯新扬, 崔凯, 沈建京. 面向插件的应用框架研究与实现[J]. 计算机工程与应用, 2009, 45(10): 89-91.
[3] 袁芳. 基于ASP. NET的文件上传模块的设计与实现[J]. 软件, 2014(7): 135-139.
[4] 胡艳华, 张恒. 基于ASP. NET的高校网络办公自动化系统的设计与实现[J]. 软件, 2012, 33(11): 119-120.
[5] 郭晓菲, 吴鹏, 王智力. 基于. NET的SP综合管理系统设计与开发[J]. 软件, 2012, 33(2): 80-83.
[6] 余翠兰. 基于ASP. NET的学生住宿管理系统的设计与实现[J]. 软件, 2014(4): 37-41.
[7] 兰洋, 蒋顺业. 基于asp. net的FMS生产管理系统[J]. 软件,2013, 34(5): 76-78.
[8] 肖东, 罗中良, 柯佳鹏. 高校学生团队管理系统的设计与实现[J]. 软件, 2014, 35(8): 50-54.
[9] 毕国锋. ASP. net技术的Web应用程序三层设计模型研究[J]. 黑龙江科技信息, 2013(3): 109-109.
[10] 李小航. ASP. NET程序设计中LINQ技术的应用研究[J].科技广场, 2010, 2010(8): 33-35.
[11] 穆丽萍, 陈定方, 张波. 基于ASP. NET的三层结构应用程序开发[C]// 湖北省机械工程学会设计与传动专业委员会学术年会. 2006.
[12] 马燕, 王文发, 李竹林. 一种基于. NET的4层结构应用模型研究与实现[J]. 江西科学, 2008, 26(2): 284-286.