一种数字程序实现方法和系统技术方案

技术编号:30554764 阅读:13 留言:0更新日期:2021-10-30 13:36
本发明专利技术提供了一种数字程序实现方法和系统,具体包括以下步骤:将程序语言开发的程序设为母程序,在母程序之外设置相对独立编号的数字程序,所述母程序包含数字程序引擎;根据所需实现的功能,母程序读入指定编号的数字程序,由数字程序引擎按其语句类别运行对应的语句运行器,实现所需要的程序功能,所述数字程序引擎为程序函数或过程,数字程序包含一种按数据类别+名称的软件数据总线方式来定义数据,简化方便数据操作,本发明专利技术数字程序开发修改容易,代码简化,加快开发速度。母程序的重复代码和实际运行代码减少,编译后可执行文件大小减少。对于实时性不间断运行系统来说,母程序可以运行中升级,解决了以往要停止运行才能升级问题。升级问题。升级问题。

【技术实现步骤摘要】
一种数字程序实现方法和系统


[0001]本专利技术涉及程序开发
,特别是涉及一种数字程序实现方法和系统。

技术介绍

[0002]现在程序开发,都是源程序经过编译后,形成一个可执行程序。如果要修改功能,必须修改源程序,重新编译生成新的可执行程序,进行测试没有问题后,然后将原有程序停止运行,新程序替换老程序后重新启动运行。这种方案存在灵活性不够,即使做小的修改,都要执行一系列流程,也花费时间和人力。对于实时性不间断运行系统来说,这种方式每次修改升级必须要停止系统运行,再来升级,业务影响较大。
[0003]程序一个重要功能是对数据进行操作处理,原有开发方式主要是先申明变量,对变量进行数据赋值,然后对变量进行操作,所需要编写多行代码,比较复杂。

技术实现思路

[0004]针对现有技术中存在的缺陷,本专利技术的目的在于提供一种数字程序实现方法和系统,实现了一段程序独立在可执行程序外参数化保存并运行的方式,实现了程序功能灵活开发修改;解决了对于实时性不间断运行系统来说,传统方式每次修改升级必须要停止系统运行,再来升级,业务影响较大的问题;另外本专利技术采用一种数据总线方式定义数据,可直接方便的引用和操作软件中的各个数据。
[0005]为了达到上述目的,本专利技术所采用的具体技术方案如下:
[0006]一种数字程序实现方法,具体包括以下步骤:
[0007]S1,将程序语言开发的程序设为母程序,在母程序之外设置相对独立编号的数字程序,所述母程序包含数字程序引擎;
[0008]S2,根据所需实现的功能,母程序读入指定编号的数字程序,由数字程序引擎按其语句类别运行对应的语句运行器,实现所需要的程序功能,所述数字程序引擎为程序函数或过程。
[0009]优选的,所述数字程序的操作流程和形式为:采用文本编辑来写数字程序,保存为文本格式;或者使用预处理程序将文本格式转换成一种规范格式;或者采用一种专用软件来交互定义数字程序内容,生成一种规范格式,包括数据库、xml、json、自定义格式,数字程序采用加密或不加密方式。
[0010]优选的,所述数字程序的语句类别包括变量申明、运算赋值语句、if条件语句、for循环语句、while循环语句、switch语句、continue语句、break语句、过程调用、sql语句、调用其它数字程序、界面控件操作、数字程序结束、注释中的一种或多种;
[0011]上述语句类别中,if条件语句、for循环语句、while循环语句、switch语句控制相应关联的单条或多条语句组运行,语句组采用特定符号标志或格式来确定语句组起始和结束范围;注释不需要母程序做操作;
[0012]优选的,在数字程序语句中使用变量名和/或一种按数据类型+名称的软件数据总
线形式来定义数据,数据总线形式数据表示方式为数据标签和/或格式字段;
[0013]所述数据标签采用一维标签、二维标签、三维标签中的一种或多种,二维标签按数据类别+名称来表示数据,包含起始符、数据类别、分隔符、名称、结束符;三维标签按数据类型+数据类别+名称来表示数据,包含起始符、数据类型、分隔符、数据类别、名称、结束符;一维标签是二维标签的简化方式,用于表示程序中常用的数据,包含起始符、名称、结束符;所述起始符、结束符、分隔符包括一个或多个字符;或者数据标签采取简化方式,省略起始符、结束符、分隔符中的一个或多个;所述标签中数据类别+名称中排列顺序可为数据类别+名称或名称+数据类别;
[0014]格式字段用于在格式保存数字程序中使用,按字段数量分为单字段、双字段、三字段,根据要求采用其中的一种或多种,双字段分别为数据类别和名称,三字段分别为数据类型,数据类别和名称,单字段中使用数据标签对数据的表示,所述格式保存,指的是采用数据库、xml、json或自定义格式;
[0015]所述数据类别,数据类别为软件中各种数据来源,根据各个开发语言不同包含且不限于常量、自定义变量、界面录入的数据、程序调用参数、文本文件、sql数据、json、xml。
[0016]优选的,母程序中对于数字程序语句中的数据标签,采用第一函数或过程,将数据标签替换成对应的实际数据值;对于数字程序语句中的格式字段,对于单字段调用第一函数或过程将单字段里面的数据标签进行数值替换;对于双字段调用第二函数获取进行实际数据;对于三字段先根据类别和名称或取实际数据,然后将实际数据做从字符串到指定数据类型的转换;
[0017]第一函数或过程,其功能是对传入字符串参数中的的数据标签进行扫描,获取实际的数据,将实际数据替换数据标签,最后返回结果数据;
[0018]第二函数功能是根据数据类别和名称,相应的获取实际数据值,返回该数据值。
[0019]优选的,所述语句运行器具体指的是针对每种数字程序语句,母程序中用来实现其功能的一组程序语句,其包括:变量申明语句运行器、运算赋值语句运行器、if条件语句运行器、for循环语句运行器、while循环语句运行器、switch语句运行器、continue语句运行器、break语句运行器、过程调用运行器、sql语句运行器、调用其它数字程序运行器、界面控件操作运行器、程序结束运行器中的一种和多种。
[0020]优选的,变量申明运行器,在开发语言不同或者在母程序中预先定义的变量中,对应分配一个变量给此申明变量,或者利用某些母程序语言自身具有的对象,对应一个变量给此申明变量,在其它语句运行器中对此变量的引用操作,实际对应操作母程序变量;
[0021]运算赋值语句运行器流程包括:
[0022]对赋值符号的右边表达式进行计算,对表达式中的函数,运行母程序中对应的函数;
[0023]将右边表达式结果赋值给赋值对象变量对应的母程序变量。
[0024]优选的,(1)if语句运行器根据指定条件相应运行指定范围语句,if条件语句的两种形式为:
[0025]if条件表达式then语句1/语句组1;
[0026]if条件表达式then语句1/语句组1else语句2/语句组2;
[0027]其运行器流程是:
[0028](a1)对条件表达式进行计算;
[0029](b1)根据条件表达式结果为true时选择运行语句1或语句组1;
[0030](c1)表达式结果为false时,如果存在else语句,则运行语句2或语句组2;运行指的是调用数字程序引擎对指定行的数字程序进行解释运行;
[0031](2)for循环语句运行器根据指定条件,相应运行指定范围语句,for循环语句形式为:
[0032]for(变量名=初始值;条件表达式;未尾循环体)
[0033]关联语句组;
[0034]其运行器流程是:
[0035](a2)母程序分配变量对应for变量名;
[0036](b2)对新建for变量值=起始值;
[0037](c2)依次运行for关联语句;
[0038](d2)运行未尾循环体本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数字程序实现方法,其特征在于,具体包括以下步骤:S1,将程序语言开发的程序设为母程序,在母程序之外设置相对独立编号的数字程序,所述母程序包含数字程序引擎;S2,根据所需实现的功能,母程序读入指定编号的数字程序,由数字程序引擎按其语句类别运行对应的语句运行器,实现所需要的程序功能,所述数字程序引擎为程序函数或过程。2.根据权利要求1所述的一种数字程序实现方法,其特征在于,所述数字程序的操作流程和形式为:采用文本编辑来写数字程序,保存为文本格式;或者使用预处理程序将文本格式转换成一种规范格式;或者采用一种专用软件来交互定义数字程序内容,生成一种规范格式,包括数据库、xml、json、自定义格式,数字程序采用加密或不加密方式。3.根据权利要求1所述的一种数字程序实现方法,其特征在于,所述数字程序的语句类别包括变量申明、运算赋值语句、if条件语句、for循环语句、while循环语句、switch语句、continue语句、break语句、过程调用、sql语句、调用其它数字程序、界面控件操作、数字程序结束、注释中的一种或多种;上述语句类别中,if条件语句、for循环语句、while循环语句、switch语句控制相应关联的单条或多条语句组运行,语句组采用特定符号标志或格式来确定语句组起始和结束范围;注释不需要母程序做操作。4.根据权利要求3所述的一种数字程序实现方法,其特征在于,在数字程序语句中使用变量名和/或一种按数据类型+名称的软件数据总线形式来定义数据,数据总线形式数据表示方式为数据标签和/或格式字段;所述数据标签采用一维标签、二维标签、三维标签中的一种或多种,二维标签按数据类别+名称来表示数据,包含起始符、数据类别、分隔符、名称、结束符;三维标签按数据类型+数据类别+名称来表示数据,包含起始符、数据类型、分隔符、数据类别、名称、结束符;一维标签是二维标签的简化方式,用于表示程序中常用的数据,包含起始符、名称、结束符;所述起始符、结束符、分隔符包括一个或多个字符;或者数据标签采取简化方式,省略起始符、结束符、分隔符中的一个或多个;所述标签中数据类别+名称中排列顺序可为数据类别+名称或名称+数据类别;格式字段用于在格式保存数字程序中使用,按字段数量分为单字段、双字段、三字段,根据要求采用其中的一种或多种,双字段分别为数据类别和名称,三字段分别为数据类型,数据类别和名称,单字段中使用数据标签对数据的表示,所述格式保存,指的是采用数据库、xml、json或自定义格式;所述数据类别,数据类别为软件中各种数据来源,根据各个开发语言不同包含且不限于常量、自定义变量、界面录入的数据、程序调用参数、文本文件、sql数据、json、xml。5.根据权利要求4所述的一种数字程序实现方法,其特征在于,母程序中对于数字程序语句中的数据标签,采用第一函数或过程,将数据标签替换成对应的实际数据值;对于数字程序语句中的格式字段,对于单字段调用第一函数或过程将单字段里面的数据标签进行数值替换;对于双字段调用第二函数获取进行实际数据;对于三字段先根据类别和名称获取实际数据,然后将实际数据做从字符串到指定数据类型的转换;第一函数或过程,其功能是对传入字符串参数中的的数据标签进行扫描,获取实际的
数据,将实际数据替换数据标签,最后返回结果数据;第二函数功能是根据数据类别和名称,相应的获取实际数据值,返回该数据值。6.根据权利要求3所述的一种数字程序实现方法,其特征在于,所述语句运行器具体指的是针对每种数字程序语句,母程序中用来实现其功能的一组程序语句,其包括:变量申明语句运行器、运算赋值语句运行器、if条件语句运行器、for循环语句运行器、while循环语句运行器、switch语句运行器、continue语句运行器、break语句运行器、过程调用运行器、sql语句运行器、调用...

【专利技术属性】
技术研发人员:黄宇辉
申请(专利权)人:软子数字软件广州有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1