[发明专利]一种VBA软件编程框架系统、方法及电子设备在审
申请号: | 202011111261.2 | 申请日: | 2020-10-16 |
公开(公告)号: | CN112328214A | 公开(公告)日: | 2021-02-05 |
发明(设计)人: | 郑自然 | 申请(专利权)人: | 山东师范大学 |
主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/30;G06F8/35 |
代理公司: | 济南圣达知识产权代理有限公司 37221 | 代理人: | 祖之强 |
地址: | 250014 山*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 vba 软件 编程 框架 系统 方法 电子设备 | ||
本公开提供了一种VBA软件编程框架系统及方法,所述系统包括在VBA的编程环境下构建的数据类模块、界面类模块和控制类模块;数据类模块包括数据的属性定义、与数据源表格相关的操作代码以及与数据相关的统计信息;界面类模块包括对界面进行的操作代码;控制类模块根据数据类模块和界面类模块中的方法进行组合完成任务,且控制类模块中的方法与界面表格中的按钮链接;本公开对于界面操作及界面和数据的交互操作分别由界面类模块和控制类模块完成,两个模块与数据源表格没有直接耦合,当数据的位置和格式出现了变动,两个模块的代码都不需要变动,降低了修改代码而引入新的错误的几率和数量,极大的降低了开发和维护的工作量,提高了工作效率。
技术领域
本公开涉及编程框架设计技术领域,特别涉及一种VBA软件编程框架系统、方法及电子设备。
背景技术
本部分的陈述仅仅是提供了与本公开相关的背景技术,并不必然构成现有技术。
VBA(Visual Basic for Applications)是一种内嵌于微软Office软件中的宏编程语言。通过该语言可以在Office软件,比如Excel软件中构造功能强大的应用软件。
但是本公开发明人发现,由于VBA语言不具备高级语言的一些特性,同时编程的全部过程都在Excel软件的内置环境中,因此对于代码的管理,系统的维护都较其他编程语言更为困难。特别是对于较为复杂的应用程序,对于应对需求改变,一些较为成熟的软件工程中的框架和模式都无法在VBA中实现,从而会出现开发和维护困难的情况。
假设有一个表格中按钮的任务是根据界面中的信息查询一个记录并显示出来。对于一般方法,会对这个按钮添加一个一般模块(非类模块),然后在这个模块中实现对数据源的查询和对界面的显示的操作。假设整个应用程序中含有多个按钮,则每个按钮都按这种方式实现。此时,如果数据源出现了变动,例如添加了一列使得数据的地址产生了变化,或者修改了数据源的一些格式,那么则对于这种一般方法,需要在每个按钮对应的模块中修改与数据源相关的所有代码,导致开发和维护的困难程度增加。
发明内容
为了解决现有技术的不足,本公开提供了一种VBA软件编程框架系统、方法及电子设备,对于界面操作及界面和数据的交互操作分别由界面类模块和控制类模块完成,两个模块与数据源表格没有直接耦合,当数据的位置和格式出现了变动,两个模块的代码都不需要变动,降低了修改代码而引入新的错误的几率和数量,极大的降低了开发和维护的工作量,提高了工作效率。
为了实现上述目的,本公开采用如下技术方案:
本公开第一方面提供了一种VBA软件编程框架系统。
一种VBA软件编程框架系统,包括在VBA的编程环境下构建的数据类模块、界面类模块和控制类模块;
数据类模块,被配置为:包括数据的属性定义、与数据源表格相关的操作代码以及与数据相关的统计信息;
界面类模块,被配置为:包括对界面进行的操作代码;
控制类模块,被配置为:根据数据类模块和界面类模块中的方法进行组合完成任务,且控制类模块中的方法与界面表格中的按钮链接。
作为可能的一些实现方式,待编程的应用程序包含至少一个用户界面和至少一个数据源表格。
作为可能的一些实现方式,所述用户界面为在Excel内部设计的界面,包括在表格中直接画的界面或者是在开发界面中画的界面;所述数据源表格为在Excel表格中存储的需要操作或者查询的数据。
作为可能的一些实现方式,数据相关的功能在数据类模块中作为方法实现,所需信息的显示功能在界面类模块中作为方法实现。
作为可能的一些实现方式,数据类模块与界面类模块基于数据类型的定义进行编码,且数据类模块和界面类模块之间不产生相互调用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东师范大学,未经山东师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011111261.2/2.html,转载请声明来源钻瓜专利网。