动态获取领域特定语言语法元素和库函数的方法及装置与流程
未命名
07-20
阅读:86
评论:0
1.本技术属于数据获取领域,尤其涉及一种动态获取领域特定语言语法元素和库函数的方法、装置、电子设备及计算机可读存储介质。
背景技术:
2.多维数据库产品一般都提供了领域特定语言(domain specific language,dsl),该语言用于多维分析和聚合计算。例如ibm tm1提供了业务规则和ti脚本语言;oracle essbase提供了calc script计算脚本语言。这些语言不同于通用的计算机编程语言,而属于dsl语言,专用于多维分析和聚合计算领域。
3.现有技术中,多维数据库和客户端通常是两个开发团队,多维库产品的客户端组件将对应多维数据库版本提供的语法元素文件内置在客户端中,即多维数据库进行语法元素文件开发之后,客户端再编写该语法元素文件。
4.然而,多维数据库领域特定语言并不是一成不变的,随着业务需求的扩大,语法元素和库函数也会不断丰富来满足更多的使用场景。随着现代软件开发不断缩短的迭代发布周期,多维库的领域特定语言在版本迭代之间发生变化的几率也随之增加。也就是说,多维库的客户端和数据库版本是强绑定的关系,在多维数据库中的语法元素文件进行更新时,客户端的语法元素文件也要做出相应的更新。
5.但是,多维数据库和客户端通常是两个开发团队,开发过程中可能由于沟通等人为错误,导致客户端内置的语法元素文件产生差异。
6.因此,如何提高语法元素文件的准确性,和保持语法元素在多维数据库和客户端之间的一致性是本领域技术人员亟需解决的技术问题。
技术实现要素:
7.本技术实施例提供一种动态获取领域特定语言语法元素和库函数的方法、装置、电子设备及计算机可读存储介质,能够有效地提高语法元素文件的准确性,和保持语法元素在多维数据库和客户端之间的一致性。
8.第一方面,本技术实施例提供一种动态获取领域特定语言语法元素和库函数的方法,方法包括:启动服务端服务器,并控制服务端服务器加载语法元素文件;
9.在启动服务端服务器过程中,创建数据接口;其中,数据接口用于接收语法元素文件;
10.启动服务端服务器;
11.控制浏览器通过客户端服务器登录服务端服务器,且在登录服务端服务器的过程中,控制客户端服务器通过数据接口获取语法元素文件。
12.可选的,控制浏览器通过客户端服务器登录服务端服务器,且在登录服务端服务器的过程中,控制客户端服务器通过数据接口获取语法元素文件,包括:
13.获取用户发送的登录指令;
14.基于登录指令,控制浏览器通过客户端服务器登录服务端服务器,且在登录服务端服务器的过程中,控制客户端服务器通过数据接口获取语法元素文件。
15.可选的,在控制客户端服务器通过数据接口获取语法元素文件之后,方法还包括:
16.将语法元素文件缓存到浏览器前端。
17.可选的,语法元素文件至少包括库函数;其中,方法还包括:
18.打开代码编译器;其中,代码编译器用于对库函数进行呈现;
19.在代码编译器内,控制浏览器前端基于库函数数据构建函数提示帮助控件的内容。
20.可选的,每个库函数包括以下五项数据:
21.库函数的类别、名称、说明、签名以及示例。
22.可选的,库函数数据包括类别名称、函数名称、说明、签名以及示例;其中,在代码编译器内,控制浏览器前端基于库函数数据构建函数提示帮助控件的内容,包括:
23.在代码编译器内,基于类别名称构建函数提示帮助控件的分类页签的分类名称列表;
24.基于函数名称以及其类别名称构建函数提示帮助控件的函数页签的函数名称列表;
25.基于每一个函数数据构建函数提示帮助控件的说明页签内容;其中,说明页签内容包括:函数名称、说明、签名以及示例。
26.可选的,代码编译器为多维库dsl代码编辑器。
27.第二方面,本技术实施例提供了一种动态获取领域特定语言语法元素和库函数的装置,装置包括:第一启动模块,用于启动服务端服务器,并控制服务端服务器加载语法元素文件;创建模块,用于在启动服务端服务器过程中,创建数据接口;其中,数据接口用于接收语法元素文件;第二启动模块,用于启动客户端服务器;获取模块,用于控制浏览器通过客户端服务器登录服务端服务器,且在登录服务端服务器的过程中,控制客户端服务器通过数据接口获取语法元素文件。
28.可选的,获取模块,用于获取用户发送的登录指令;基于登录指令,控制浏览器通过客户端服务器登录服务端服务器,且在登录所述服务端服务器的过程中,控制所述客户端服务器通过所述数据接口获取所述语法元素文件。
29.可选的,装置还包括:缓存模块,用于将语法元素文件缓存到浏览器前端。
30.可选的,语法元素文件至少包括库函数;其中,装置还包括:打开模块,用于打开代码编译器;其中,代码编译器用于对库函数进行呈现;构建模块,用于在代码编译器内,控制浏览器前端基于库函数数据构建函数提示帮助控件的内容。
31.可选的,每个库函数包括以下五项数据:库函数的类别名称、函数名称、说明、签名以及示例。
32.可选的,库函数数据包括类别名称、函数名称、说明、签名以及示例;其中,构建模块,用于在代码编译器内,基于类别名称构建函数提示帮助控件的分类页签的分类名称列表;基于函数名称以及其类别名称构建函数提示帮助控件的函数页签的函数名称列表;基于每一个函数数据构建函数提示帮助控件的说明页签内容;其中,说明页签内容包括:函数名称、说明、签名以及示例。
33.可选的,代码编译器为多维库dsl代码编辑器。
34.第三方面,提供了一种电子设备,该电子设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序或指令,程序或指令被处理器执行时实现如第一方面所示的动态获取领域特定语言语法元素和库函数的方法的步骤。
35.第四方面,提供了一种可读存储介质,该可读存储介质上存储程序或指令,程序或指令被处理器执行时实现如第一方面所示的动态获取领域特定语言语法元素和库函数的方法的步骤。
36.本技术在启动服务端服务器时,控制服务端加载语法元素文件;将客户端服务器和服务端服务器相连接,然后将语法元素文件通过数据接口从服务端服务器传输至客户端服务器。也就是说,本技术通过创建数据接口实现服务端服务器以及客户端服务器之间的数据传输,将服务端服务器以及客户端服务器进行解耦,在服务端服务器中的语法元素文件进行更新时,客户端服务器无需进行对应的版本更新,只需要将更新后的语法元素文件通过数据接口传输到客户端服务器即可。本技术能够有效地提高语法元素文件的准确性,确保客户端和服务端的语法元素的一致性。
附图说明
37.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
38.图1是本技术一个实施例提供的动态获取领域特定语言语法元素和库函数的方法的流程示意图;
39.图2是本技术一个实施例提供的语法结构元素和库函数的动态获取和加载机制的示意图;
40.图3是本技术一个实施例提供的一种多维库客户端和服务端的部署架构图;
41.图4是本技术一个实施例提供的函数帮助控件的示意图;
42.图5是本技术一个实施例提供的构建函数帮助控件内容的流程示意图;
43.图6是本技术一个实施例提供的语法结构元素和库函数集合文件示例的示意图;
44.图7是本技术一个实施例提供的动态获取领域特定语言语法元素和库函数的装置的结构示意图;
45.图8是本技术一个实施例提供的电子设备的结构示意图。
具体实施方式
46.下面将详细描述本技术的各个方面的特征和示例性实施例,为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本技术进行进一步详细描述。应理解,此处所描述的具体实施例仅意在解释本技术,而不是限定本技术。对于本领域技术人员来说,本技术可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本技术的示例来提供对本技术更好的理解。
47.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实
体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
48.基于背景技术部分的内容可知,现有技术中,多维数据库和客户端通常是两个开发团队,开发过程中可能由于沟通等人为错误,导致客户端内置的语法元素文件产生差异。
49.为了解决现有技术问题,本技术实施例提供了一种动态获取领域特定语言语法元素和库函数的方法、装置、设备及计算机可读存储介质。下面首先对本技术实施例所提供的动态获取领域特定语言语法元素和库函数的方法进行介绍。
50.图1示出了本技术一个实施例提供的动态获取领域特定语言语法元素和库函数的方法的流程示意图。如图1所示,
51.步骤s11:启动服务端服务器,并控制服务端服务器加载语法元素文件。
52.步骤s13:在启动服务端服务器过程中,创建数据接口;其中,数据接口用于接收语法元素文件。
53.具体的,在本技术中,结合图2中的步骤(1)所示,首先在启动服务端服务器(即多维数据库)的同时,可以控制服务端服务器加载语法元素文件。该语法元素文件随对应版本的服务端服务器一起发布,也就是说,在服务端服务器的版本进行更新时,语法元素文件也会进行更新。比如:结合图3所示,包括一个客户端服务器(即图2中的多维库客户端服务器)以及三个服务端服务器(即图2中的多维数据库服务器)。其中,1个多维库客户端服务器可以同时创建到多个多维库服务器的连接,而且每个多维库服务的版本可以不同,不同版本的多维库服务器支持的语法结构元素和库函数集合也可能不同。本例中:多维库1的版本是v1,支持2个函数:function1、function2。多维库2的版本是v2,在版本v1的基础上,增加了一个函数function3。多维库3的版本是v4,支持4个函数,在版本v2的基础上,增加了一个函数function4。
54.该部署示例下,如果多维库客户端的版本对应多维数据库版本v1,并且语法元素和库函数文件内置到客户端中,能正确识别和显示function1和function2,但是无法正确显示连接2和连接3对应新版本多维库中的新增函数function3和function4。
55.此外,在启动服务端服务器过程中,创建一个数据接口,需要说明的是,数据接口用于接收语法元素文件。此时,该数据接口还没有被使用,具体使用过程在下文进行具体描述。
56.需要说明的是,语法元素文件可以为语法结构元素和库函数集合文件。
57.步骤s15:启动客户端服务器。
58.步骤s17:控制浏览器通过客户端服务器登录服务端服务器,且在登录服务端服务器的过程中,控制客户端服务器通过数据接口获取语法元素文件。
59.在一个可选的实施例中,步骤s17可以采用如下方式:
60.获取用户发送的登录指令。
61.基于登录指令,控制浏览器通过客户端服务器登录服务端服务器,且在登录服务
端服务器的过程中,控制客户端服务器通过数据接口获取语法元素文件。
62.在本实施例中,在控制服务端服务器加载语法元素文件之后,用户可以下发登录指令,然后根据登录指令通过浏览器登录服务端服务器,便于后续客户端服务器能够从服务端服务器中获取语法元素文件。
63.具体地,结合步骤s13中的数据接口,并参考图2中的步骤(3)。本实施例在通过浏览器成功登陆服务端服务器的情况下,客户端服务器通过数据接口调用服务端服务器,加载语法元素文件。本技术中多维数据库客户端在登陆时,客户端服务器一次性地从服务端服务器获取完整的语法元素文件,其中包括该多维库版本新增的语法关键字和新增的库函数集合。无需升级和重新部署多维库客户端。本技术符合单一真实数据源(single source of truth)的设计原则,即语法元素文件来自服务端服务器,从而避免了由于多维数据库和客户端双方团队沟通错误导致的结果差异风险,从而确保客户端和服务端的语法元素的一致性。
64.可选的,数据接口可以为rest接口。
65.在一个可选的实施例中,在步骤s17之后,方法还包括:
66.将语法元素文件缓存到浏览器前端。
67.在本实施例中,在客户端服务器获取到服务端服务器加载的语法元素文件之后,可以将语法元素文件缓存到浏览器前端,即多维数据库客户端一次登录获取成功后不再产生新的数据接口请求,减少网络交互开销。
68.需要说明的是,客户端服务器连接的不同版本的服务端服务器分别保存一份语法元素文件在浏览器前端中。
69.在一个可选的实施例中,语法元素文件至少包括库函数;其中,方法还包括:
70.打开代码编译器;其中,代码编译器用于对库函数进行呈现。
71.在代码编译器内,控制浏览器前端基于库函数数据构建函数提示帮助控件的内容。
72.在本实施例中,结合图2中的步骤(4)以及步骤(5)所示,语法元素文件至少包括库函数。其中,浏览器在得到库函数之后,需要将库函数呈现给用户进行查看,那么需要打开代码编译器,以实现库函数的呈现。
73.此外,为了便于用户对库函数进行查看,本技术根据浏览器获得的库函数,在代码编译器内,控制浏览器前端构建函数提示帮助空间的内容,以实现库函数的分类,从而便于用户进行查看。
74.在一个可选的实施例中,代码编译器为多维库dsl代码编辑器。
75.在一个可选的实施例中,每个库函数的数据包括:库函数的类别名称、函数名称、说明、签名以及示例。
76.在一个可选的实施例中,在库函数包括:类别名称、函数名称、说明、签名以及示例时,在代码编译器内,控制浏览器前端基于库函数数据构建函数提示帮助控件的内容可以采用如下方式:
77.在代码编译器内,基于类别名称构建函数提示帮助控件的分类页签的分类名称列表。
78.基于函数名称以及其类别名称构建函数提示帮助控件的函数页签的函数名称列
表。
79.基于每一个函数数据构建函数提示帮助控件的说明页签内容;其中,说明页签内容包括:函数名称、说明、签名以及示例。
80.在本实施例中,结合图4、图5以及图6所示,函数提示帮助控件分成3个页签:分类、函数和说明,分别包含了函数的类别名称列表,某个类别的函数名称列表,某个函数的说明、签名和示例。其中,这些数据来自多维库客户端动态从多维库服务器获取的库函数集合数据,因此该函数帮助控件能够展示多维数据库新增函数的集合。
81.构建函数帮助控件内容的具体步骤如下:
82.步骤1:以用户打开代码编辑器。遍历库函数数据中的functioncategories(功能类别)数组,然后构建帮助控件的分类页签的分类名称列表。其中,以属性类别为例:
83.步骤2:用户点击属性,遍历库函数数据中的functioninfos(功能信息)数组,获取functionname(函数名)集合,满足functioncategory=“属性”。然后构建帮助控件的函数页签的函数名称列表,该列表包含所有属性类别的函数。
84.步骤3:用户点击具体函数attrs。获取functioninfos(功能信息)中functionname=attrs的函数的属性。然后构建帮助控件的说明页签的内容,包括函数名名称、说明、签名和示例。
85.需要说明的是,图4中attrs在函数帮助控件中用于表征函数名称;“返回某一指定维度元素的字符串属性”用于表征函数说明;“语法attrs(dimension,element,attribute)”用于表征函数签名;attrs(
‘
plan-business-unit’,
‘
10100’,
‘
currency’)用于表征函数示例。图4中函数attrs的名称、类别、说明、签名和示例都来自图6中functioninfos数组中functionname=“attrs”的数据块。
86.本技术中的函数提示帮助控件摆脱了对多维库客户端版本的依赖。即当多维数据库的升级版本增加了库函数时,可以在不改动、不升级和重新部署多维库客户端组件的情况下就能够在函数提示帮助控件中正确展示新版本多维数据库新增的库函数集合。实现了管理端和客户端组件的解耦,减少了开发、部署、升级和维护多维库客户端组件的工作量。
87.需要说明的是,图6描述本技术中的示例语法结构元素和库函数集合文件示例。
88.该语法元素文件包含了3个部分:keywords、operators、functions,分别表示多维库dsl中的语法关键字,操作符和库函数。其中,库函数部分包含了两个部分,一部分是函数类别,另一部分是函数详细信息;详细信息部分包括函数名称,函数类别,函数说明,函数签名,使用示例。
89.本技术多维库客户端在登陆时从服务端服务器获取语法元素文件。并且,多维库客户端只在登录时从多维数据库获取一次数据后,即将该数据缓存在浏览器端,之后的前端功能直接使用浏览器缓存数据,不再向多维数据库发送请求,节省了网络流量,并且避免了由于服务端和客户端双方团队沟通错误导致的客户端内置的语法元素和数据库发布的语法元素产生差异的风险。
90.此外,在服务端服务器进行升级时,本技术无需升级和重新部署客户端,即能够在函数提示帮助控件中正确展示多维数据库新增的库函数集合。
91.另外,本技术实现了库函数数据的变动同多维库客户端的解绑定,减少了开发、部署、升级和维护多维库客户端的工作量。
92.图7示出了本技术实施例提供的动态获取领域特定语言语法元素和库函数的装置的结构示意图。如图7所示,
93.动态获取领域特定语言语法元素和库函数的装置包括:第一启动模块71,用于启动服务端服务器,并控制服务端服务器加载语法元素文件;创建模块72,用于在启动服务端服务器过程中,创建数据接口;其中,数据接口用于接收语法元素文件;第二启动模块73,用于启动客户端服务器;获取模块74,用于控制浏览器通过客户端服务器登录服务端服务器,且在登录服务端服务器的过程中,控制客户端服务器通过数据接口获取语法元素文件。
94.可选的,获取模块74,用于获取用户发送的登录指令;基于登录指令,控制浏览器通过客户端服务器登录服务端服务器,且在登录服务端服务器的过程中,控制客户端服务器通过数据接口获取语法元素文件。
95.可选的,装置还包括:缓存模块,用于将语法元素文件缓存到浏览器前端。
96.可选的,语法元素文件至少包括库函数;其中,装置还包括:打开模块,用于打开代码编译器;其中,代码编译器用于对库函数进行呈现;构建模块,用于在代码编译器内,控制浏览器前端基于库函数数据构建函数提示帮助控件的内容。
97.可选的,每个库函数包括以下五项数据:库函数的类别名称、函数名称、说明、签名以及示例。
98.可选的,库函数数据包括类别名称、函数名称、说明、签名以及示例;其中,构建模块,用于在代码编译器内,基于类别名称构建函数提示帮助控件的分类页签的分类名称列表;基于函数名称以及其类别名称构建函数提示帮助控件的函数页签的函数名称列表;基于每一个函数数据构建函数提示帮助控件的说明页签内容;其中,说明页签内容包括:函数名称、说明、签名以及示例。
99.可选的,代码编译器为多维库dsl代码编辑器。
100.本技术多维库客户端在登陆时从服务端服务器获取语法元素文件。并且,多维库客户端只在登录时从多维数据库获取一次数据后,即将该数据缓存在浏览器端,之后的前端功能直接使用浏览器缓存数据,不再向多维数据库发送请求,节省了网络流量,并且避免了由于服务端和客户端双方团队沟通错误导致的客户端内置的语法元素和数据库发布的语法元素产生差异的风险。
101.此外,在服务端服务器进行升级时,本技术无需升级和重新部署客户端,即能够在函数提示帮助控件中正确展示多维数据库新增的库函数集合。
102.另外,本技术实现了库函数数据的变动同多维库客户端的解绑定,减少了开发、部署、升级和维护多维库客户端组件的工作量。
103.图7所示装置中的各个模块/单元具有实现图1中各个步骤的功能,并能达到其相应的技术效果,为简洁描述,在此不再赘述。
104.图8示出了本技术实施例提供的电子设备的结构示意图。
105.电子设备可以包括处理器301以及存储有计算机程序指令的存储器302。
106.具体地,上述处理器301可以包括中央处理器(cpu),或者特定集成电路(application specific integrated circuit,asic),或者可以被配置成实施本技术实施例的一个或多个集成电路。
107.存储器302可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器
302可包括硬盘驱动器(hard disk drive,hdd)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(universal serial bus,usb)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器302可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器302可在电子设备的内部或外部。在特定实施例中,存储器302可以是非易失性固态存储器。
108.在一个实施例中,存储器302可以是只读存储器(read only memory,rom)。在一个实施例中,该rom可以是掩模编程的rom、可编程rom(prom)、可擦除prom(eprom)、电可擦除prom(eeprom)、电可改写rom(earom)或闪存或者两个或更多个以上这些的组合。
109.处理器301通过读取并执行存储器302中存储的计算机程序指令,以实现上述实施例中的任意一种动态获取领域特定语言语法元素和库函数的方法。
110.在一个示例中,电子设备还可包括通信接口303和总线310。其中,如图8所示,处理器301、存储器302、通信接口303通过总线310连接并完成相互间的通信。
111.通信接口303,主要用于实现本技术实施例中各模块、装置、单元和/或设备之间的通信。
112.总线310包括硬件、软件或两者,将电子设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(agp)或其他图形总线、增强工业标准架构(eisa)总线、前端总线(fsb)、超传输(ht)互连、工业标准架构(isa)总线、无限带宽互连、低引脚数(lpc)总线、存储器总线、微信道架构(mca)总线、外围组件互连(pci)总线、pci-express(pci-x)总线、串行高级技术附件(sata)总线、视频电子标准协会局部(vlb)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线310可包括一个或多个总线。尽管本技术实施例描述和示出了特定的总线,但本技术考虑任何合适的总线或互连。
113.另外,结合上述实施例中的动态获取领域特定语言语法元素和库函数的方法,本技术实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种动态获取领域特定语言语法元素和库函数的方法。
114.需要明确的是,本技术并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本技术的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本技术的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
115.以上所述的结构框图中所示的功能模块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(asic)、适当的固件、插件、功能卡等等。当以软件方式实现时,本技术的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、rom、闪存、可擦除rom(erom)、软盘、cd-rom、光盘、硬盘、光纤介质、射频(rf)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
116.还需要说明的是,本技术中提及的示例性实施例,基于一系列的步骤或者装置描
述一些方法或系统。但是,本技术不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
117.上面参考根据本技术的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本技术的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器,以产生一种机器,使得经由计算机或其它可编程数据处理装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。
118.以上所述,仅为本技术的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本技术的保护范围之内。
技术特征:
1.一种动态获取领域特定语言语法元素和库函数的方法,其特征在于,所述方法包括:启动服务端服务器,并控制所述服务端服务器加载语法元素文件;在启动所述服务端服务器过程中,创建数据接口;其中,所述数据接口用于接收所述语法元素文件;启动客户端服务器;控制浏览器通过客户端服务器登录服务端服务器,且在登录所述服务端服务器的过程中,控制所述客户端服务器通过所述数据接口获取所述语法元素文件。2.根据权利要求1所述的动态获取领域特定语言语法元素和库函数的方法,其特征在于,所述控制浏览器通过客户端服务器登录服务端服务器,且在登录所述服务端服务器的过程中,控制所述客户端服务器通过所述数据接口获取所述语法元素文件,包括:获取用户发送的登录指令;基于所述登录指令,所述控制浏览器通过客户端服务器登录服务端服务器,且在登录所述服务端服务器的过程中,控制所述客户端服务器通过所述数据接口获取所述语法元素文件。3.根据权利要求2所述的动态获取领域特定语言语法元素和库函数的方法,其特征在于,在控制所述客户端服务器通过数据接口获取所述语法元素文件之后,所述方法还包括:将所述语法元素文件缓存到浏览器前端。4.根据权利要求3所述的动态获取领域特定语言语法元素和库函数的方法,其特征在于,所述语法元素文件至少包括库函数;其中,所述方法还包括:打开代码编译器;其中,所述代码编译器用于对所述库函数进行呈现;在所述代码编译器内,控制所述浏览器前端基于所述库函数构建函数提示帮助控件的内容。5.根据权利要求4所述的动态获取领域特定语言语法元素和库函数的方法,其特征在于,所述每个库函数包括以下五项数据:所述库函数的类别名称、函数名称、说明、签名以及示例。6.根据权利要求5所述的动态获取领域特定语言语法元素和库函数的方法,其特征在于,所述库函数包括所述类别名称、所述函数名称、所述说明、所述签名以及所述示例;其中,所述在所述代码编译器内,控制所述浏览器前端基于所述库函数构建函数提示帮助控件的内容,包括:在所述代码编译器内,基于所述类别名称构建所述函数提示帮助控件的分类页签的分类名称列表;基于所述函数名称以及其类别名称构建所述函数提示帮助控件的函数页签的函数名称列表;基于每一个所述函数构建所述函数提示帮助控件的说明页签内容;其中,所述说明页签内容包括:函数名称、说明、签名以及示例。7.根据权利要求4所述的动态获取领域特定语言语法元素和库函数的方法,其特征在于,所述代码编译器为多维库dsl代码编辑器。8.一种动态获取领域特定语言语法元素和库函数的装置,其特征在于,所述装置包括:第一启动模块,用于启动服务端服务器,并控制所述服务端服务器加载语法元素文件;
创建模块,用于在启动所述服务端服务器过程中,创建数据接口;其中,所述数据接口用于接收所述语法元素文件;第二启动模块,用于启动客户端服务器;获取模块,用于控制浏览器通过客户端服务器登录服务端服务器,且在登录所述服务端服务器的过程中,控制所述客户端服务器通过所述数据接口获取所述语法元素文件。9.一种电子设备,其特征在于,所述电子设备包括:处理器以及存储有计算机程序指令的存储器;所述处理器执行所述计算机程序指令时实现如权利要求1-7任意一项所述的动态获取领域特定语言语法元素和库函数的方法。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-7任意一项所述的动态获取领域特定语言语法元素和库函数的方法。
技术总结
本申请提供了一种动态获取领域特定语言语法元素和库函数的方法、装置、电子设备及计算机可读存储介质,该动态获取领域特定语言语法元素和库函数的方法包括:启动服务端服务器,并控制服务端服务器加载语法元素文件;在启动服务端服务器过程中,创建数据接口;其中,数据接口用于接收语法元素文件;启动客户端服务器;控制浏览器通过客户端服务器登录服务端服务器,且在登录服务端服务器的过程中,控制客户端服务器通过数据接口获取语法元素文件。本申请能够有效地提高语法元素文件的准确性,并确保客户端和服务端的语法元素的一致性。并确保客户端和服务端的语法元素的一致性。并确保客户端和服务端的语法元素的一致性。
技术研发人员:贾小强 屈恩
受保护的技术使用者:北京元年科技股份有限公司
技术研发日:2023.03.08
技术公布日:2023/7/19
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
