CN113590086B - 快速开发软件的方法、计算机设备、及存储介质 - Google Patents
快速开发软件的方法、计算机设备、及存储介质 Download PDFInfo
- Publication number
- CN113590086B CN113590086B CN202010367089.0A CN202010367089A CN113590086B CN 113590086 B CN113590086 B CN 113590086B CN 202010367089 A CN202010367089 A CN 202010367089A CN 113590086 B CN113590086 B CN 113590086B
- Authority
- CN
- China
- Prior art keywords
- instruction
- function body
- function
- node
- interface
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种快速开发软件的方法,快速开发软件的方法包括:提供多个指令封装体、和/或一个或者多个函数体;获取用户的配置信息;通过所述指令输入接口和所述指令输出接口、和/或所述函数体输入接口和所述函数体输出接口将所述多个指令封装体、一个或者多个指令封装体和/或函数体进行关联形成另一处理逻辑程序块;以及将所述另一处理逻辑程序块进行封装处理形成另一函数体。此外,本发明还提供一种应用快速开发软件的方法的计算机设备和存储介质。上述快速开发软件的方法可以调用已开发的函数体,大大加快了软件开发的进程。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种快速开发软件的方法、计算机设备、及存储介质。
背景技术
随着互联网技术在企业应用领域的发展,且为了降低成本以及量产,企业逐步采用了产品信息化。相应地,市场上从基本的财务、HR、OA、CRM系统建设到移动办公、决策分析等系统不断推陈出新。
由于企业信息化建设是一项专业性较强的技能,大部分企业却并不具备该项能力,需依托专业的信息化建设企业。每个业务场景内都需要对涉及的进行不同的数据处理。信息化建设者为了加快开发,将开发好的各种业务数据的处理程序块进行重复引用,但是引用这些既有程序块需要在相同的业务处理流程下才能适用。
然而,不同的企业针对不同场景甚至相同场景所需求的数据处理流程上存在一定差异,因此,在实际开发过程中,仍然需要对既有的程序块进行修改才能够引用,且往往修改的工作量较大。
发明内容
有鉴于此,实用必要一种提高软件开发效率的快速开发软件的方法、计算机设备、存储介质。
第一方面,本发明提供一种快速开发软件的方法,所述快速开发软件包括:
提供多个指令封装体、和/或一个或者多个函数体,每一所述指令封装体由一指令编程语句框架进行封装而成;每一所述函数体由一处理逻辑程序块进行封装而成;所述指令封装体和所述函数体具有相同的框架,每一所述指令封装体包括指令输入接口、指令输出接口和指令调用函数,所述函数体包括函数体输入接口、函数体输出接口和函数体调用函数;
获取用户的配置信息,所述配置信息包括需要配置的节点信息、节点的关联信息、节点的输入情报要素和输出情报要素,其中,所述节点信息用于表示需要配置的指令封装体、和/或函数体;所述节点的关联信息用于表示所述需要配置的指令封装体、和/或函数体的连接顺序;所述节点的输入情报要素和所述输出情报要素用于表示需要配置的指令封装体、和/或需要配置的函数体输入情报要素和输出情报要素,其中,互连的两个节点中,一个节点的输入情报要素和另一节点的输出情报要素全部或者部分相同,或者一个节点的输出情报要素与另一节点的输入情报要素全部或者部分相同;
将所述节点的输入情报要素和输出情报要素对应地配置给所述指令输入接口和所述对应的指令输出接口,和/或将所述节点的输入情报要素和输出情报对应地配置给所述函数体输入接口和所述函数体输出接口;
根据所述节点信息,通过所述指令调用函数调用与所述需要配置的指令封装体相对应的指令编程语句框架、和/或通过所述函数体调用函数调用所述需要配置的函数体相对应的处理逻辑程序块;
根据所述关联信息,通过所述指令输入接口和所述指令输出接口、和/或所述函数体输入接口和所述函数体输出接口将所述多个指令封装体、一个或者多个指令封装体和/或函数体进行关联形成另一处理逻辑程序块;以及
将所述另一处理逻辑程序块进行封装处理形成另一函数体,所述另一函数体与所述函数体框架相同。
第二方面,本发明还提供一种计算机设备,所述计算设备包括:
存储器,所述存储器用于存储计算机可执行程序;以及
处理器,所述处理器用于执行所述可执行程序以实现上述快速开发软件的方法。
第三方面,本发明还提供一种存储介质,所述存储介质用于存储计算机可执行程序,所述计算机可执行程序由处理器执行以实现上述快速开发软件的方法。
上述软件开发方法,由于提供与编程语句框架对应的指令封装体,各指令封装体具有相同框架可以将各指令封装体进行关联或者组合形成数据处理逻辑块。而且由于可以调用已开发的函数体,大大加快了软件开发的进程。
附图说明
图1为本发明第一实施例提供的一种快速开发软件程序的运行环境示意图。
图2为本发明第一实施例提供的一种计算机设备的内部结构架构图。
图3为本发明第一实施例提供的快速开发软件方法的流程示意图。
图4为本发明第一实施例提供的快速开发软件的程序模块示意图。
图5为本发明第一实施例提供的指令封装体的结构框架结构示意图。
图6为本发明第一实施例提供的指令封装体配置成函数体示意图。
图7为本发明第一实施例提供的快速开发软件设置到的数据存储架构示意图。
图8为本发明第一实施例提供的快速开发软件方法的用户界面示意图。
图9为本发明第二实施例提供的快速开发软件方法的另一用户界面示意图。
图10为本发明第一实施例提供快速开发软件方法的子流程示意图。
图11为本发明第二实施例提供快速开发软件方法的子流程示意图。
图12为本发明第三实施例提供的第三函数体形成过程示意图。
图13a~13c为本发明第一实施例提供的创建的函数体的内部结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
请参看图1,其为第一实施例提供的快速开发软件程序运行的环境示意图。快速开发软件的系统1000包括客户端1001和后台服务器端1002。后台服务器端1002通过网络1003与客户端1001通讯。在本实施例中,后台服务器端1002指令封装体和/或函数体、以及在客户端1001显示用于构建可视化图示所需的图形化元素;用户通过客户端1001利用该图形化元素配置出与指令封装体/或函数体相对应的可视化图示;后台服务器端1002预设规则解析该可视化图示中包含的表示指令封装体和/或函数体信息,并利用对应的指令编程语句框架和处理逻辑程序块生成一个或者多个可执行软件。
函数体,封装后的程序块。
指令编程语句框架,为未包含入参和出参的指令编程语句或者入参和出参为空的,包括但不限于寄存编程语句框架、赋值编程语句框架、判断编程语句框架。
图形元素,用于构建图形,包括但不限于图标、节点图形、配置线、输入框等。其中:
图标,至少包括与数据处理逻辑所需的编程语句框架相对应的图标和函数体图标,函数体图标与已配置的逻辑处理程序或者事件处理程序相对应。
节点图形,与该图标一一对应。
配置线,用于将各节点图形进行关联。
输入框,用于供用户配置入参(输入情报要素)和出参(输出情报要素)。
具体如何利用编程语句框架生成数据处理逻辑程序块将在下文详细描述。
请结合参看图2,其为第一实施例提供的计算机设备800的内部结构图示。在本实施例中,客户端1001和服务器端1002分别安装具有的客户端和服务器端程序的计算机设备。计算机设备可以为装载有平板电脑、台式计算机、笔记型计算机。计算机设备可以装载有或/>等操作系统。计算机设备800包括存储介质801、处理器802和总线803。其中,存储介质801至少包括一种类型的可读存储介质,该可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储介质801在一些实施例中可以是计算机设备800的内部存储单元,例如计算机设备800的硬盘。存储介质801在另一些实施例中也可以是的外部计算机设备800存储设备,例如计算机设备800上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储介质801还可以既包括计算机设备800的内部存储单元也包括外部存储设备。存储介质801不仅可以用于存储安装于计算机设备800的应用软件及各类数据,例如实现快速开发软件的程序指令等,还可以用于暂时地存储已经输出或者将要输出的数据。
总线803可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图2中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
进一步地,计算机设备800还可以包括显示组件804。显示组件804可以是LED(Light Emitting Diode,发光二极管)显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示组件804也可以适当的称为显示装置或显示单元,用于显示在计算机设备800中处理的信息以及用于显示可视化的用户界面。
进一步地,计算机设备800还可以包括通信组件805,通信组件805可选的可以包括有线通信组件和/或无线通信组件(如WI-FI通信组件、蓝牙通信组件等),通常用于在计算机设备800与其他计算机设备之间建立通信连接。
处理器802在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储介质801中存储的程序代码或处理数据。具体地,处理器802执行快速开发软件程序以控制计算机设备800实现快速开发软的方法。
可以理解地,图2仅示出了具有组件801-805以及01的计算机设备800,本领域技术人员可以理解的是,图3示出的结构并不构成对计算机设备800的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
请参看图3和图4,图3示意性地示出第一实施例提供的快速开发软件的方法流程图。图4示意性地示出快速开发软件的程序块示意图。在本实施例中,快速开发软件的程序指令执行于计算机设备800中。其中,快速开发软件程序指令存储于存储介质801中。处理器802执行快速开发软件程序指令以实现快速开发软件的方法。快速开发软件的方法包括以下步骤。
步骤S301,提供多个指令封装体、和/或一个或者多个函数体,每一指令封装体由一指令编程语句框架进行封装而成;每一函数体由一处理逻辑程序块进行封装而成;指令封装体和函数体具有相同的框架,每一指令封装体包括指令输入接口、指令输出接口和指令调用函数,函数体包括函数体输入接口、函数体输出接口和函数体调用函数。
请结合参看图4和图5,在本实施例中,指令编程语句框架为未包含入参(指令输入情报要素)和出参(指令输出情报要素)的指令编程语句。指令编程语句框架D包括第一指令编程框架FD和第二编程语句框架RD。第一指令编程语句框架FD为前端软件(用户界面)开发所需的事件处理指令编程语句框架;第二指令编程语句框架RD为开发后端软件开发所需的数据处理逻辑指令编程语句框架。指令封装体B包括对第一指令编程语句框架FD进行封装形成的第一指令封装体FB和对第二指令编程语句框架RD进行封装形成的第二指令封装体RB。第一指令编程语句框架FD包括但不限于Null编程语句框架D1、转换字符串编程语句框架D2、自减运算编程语句框架D3。第二指令编程语句框架RD包括但不限于寄存编程语句框架D4、赋值编程语句框架D5、判断编程语句框架D6。可以理解地,具有同样功能但采用不同编程语言,具有相同功能的第一指令编程语句框架FD或者第二指令编程语句框架RD语法结构不同。例如,采用C++软件开发语言的与采用JAVA软件开发语言的寄存编程语句框架不同。用户可以根据具体采用软件开发语言确定指令编程语句框架,在此不做限定。
指令封装体B包括第一指令封装体FB和第二指令封装体RB。第一指令封装体FB由第一指令编程语句框架FD封装而成。第二指令封装体RB由第二指令编程语句框架RB封装而成。指令封装体B包括指令输入接口I1、指令输出接口O1、指令调用函数F1。在本实例中,第一指令封装体FB和第二指令封装体RB的指令调用函数F1相同。在一些可行的实施例中,第一指令封装体FB和第二指令封装体RB的指令调用函数可以不相同。指令输入接口I1用于接收用户配置的指令输入情报要素;指令输出接口O1用于接收用户配置的指令输出情报要素。指令调用函数F1用于调用对应的指令编程语句框架,并将用户配置的指令输入情报要素和指令输入情报要素进行组合形成指令编程语句。可以理解地,第一指令封装体FB对应的输入情报要素和输出情报要素为页面元素203(如图8)。第二指令封装体RB对应的输入情报要素和输出情报要素为信息元素318(如图9)。
处理逻辑程序块P可以包括事件处理逻辑程序块和数据处理逻辑程序块。其中,事件处理逻辑程序块用于调用数据处理逻辑程序处理前端用户界面输入的数据并输出相应的处理结果。数据处理逻辑程序块用于处理后端数据并提供数据给事件处理逻辑程序块。在本实施例中,处理逻辑程序块P由指令封装体B进行组合而成。在一些可行的本实施例中,处理逻辑程序块P也可以由系统自带的系统处理逻辑程序。
请参看图6,函数体S包括事件处理函数体FS和数据处理逻辑体RS。在本实施例中,函数体S可以理解为对处理逻辑块P进行封装后形成的。函数体S的框架和指令封装体B的框架相同。函数体S包括函数体调用函数F2、函数体输入接口I2和函数体输出接口O2。在本实施例中,事件处理函数体FS和数据处理逻辑体RS的函数体调用函数F2相同。在一些可行的实施例中,事件处理函数体FS和数据处理逻辑体RS的函数体调用函数F2可以不相同。函数体输入接口I2用于接收用户配置的函数体输入情报要素;指令输出接口O2用于接收用户配置的函数体输出情报要素。函数体调用函数F2用于调用对应的处理逻辑程序块P,并将用户配置的函数体输入情报要素和函数体输出情报要素提供给对应的处理逻辑体程序块P以供处理程序块P根据函数体输入情报要素进行处理输出函数体输出情报要素。
步骤S303,获取用户的配置信息,配置信息包括需要配置的节点信息、节点的关联信息、节点的输入情报要素和输出情报要素。其中,节点信息用于表示需要配置的指令封装体、和/或函数体;节点的关联信息用于表示需要配置的指令封装体、和/或函数体的连接顺序;节点的输入情报要素和输出情报要素用于表示需要配置的指令封装体、和/或需要配置的函数体输入情报要素和输出情报要素,其中,互连的两个节点中,一个节点的输入情报要素和另一节点的输出情报要素全部或者部分相同,或者一个节点的输出情报要素与另一节点的输入情报要素全部或者部分相同。
在本实施例中,用户是通过图形配置的方式来输入配置信息的(如图8和图9所示)。具体如何配置将在下文详细描述。
步骤S305,将节点的输入情报要素和输出情报要素对应地配置给指令输入接口I1和对应的指令输出接口O1,和/或将节点的输入情报要素和输出情报对应地配置给函数体输入接口I2和函数体输出接口O2。
步骤S307,根据节点信息,通过指令调用函数F1调用与需要配置的指令封装体B相对应的指令编程语句框架RD、和/或通过函数体调用函数F2调用需要配置的函数体相对应的处理逻辑程序块。
步骤S309,根据关联信息,通过指令输入接口I1和指令输出接口O1、和/或函数体输入接口I2和函数体输出接口O2将多个指令封装体B、一个或者多个指令封装体B和/或函数体S进行关联形成另一处理逻辑程序块P。
请结合参看图13a-13c,图13a-13c示意性地示出各指令封装体和/或各函数体关联示意图。
当两个指令封装体B关联时,将一个指令封装体B的指令输入接口I1与另一指令封装体B的输出接口I2进行关联,且指令输入接口I1所配置的输入情报要素为输出接口O1的输出情报要素的部分或者全部情报要素(如图13a)。
当两个函数体S关联时,将一个函数体S的函数体输入接口I2和另一函数体S的输出接口O2进行关联,且函数体输入接口I2所配置的输入情报要素为函数体输出接口O2的输出情报要素的部分或者全部情报要素(如图13b)。
当一个函数体S和一个指令封装体B关联时,将函数体S的函数体输入接口I2或者输出接口O2和指令封装体B的输出接口O1或者输入接口I1进行关联,且函数体输入接口I2所配置的输入情报要素被配置为指令输出接口O1的输出情报要素的部分或者全部情报要素,或者函数体输出接口O2所配置的输出情报要素全部或者部分被配置为指令封体输入接口I1的输入情报要素(如图13c)。
可以理解地,由于关联的两个指令封装体、关联的两个函数体,关联的指令封装体和函数体还对输入情报要素和输出情报要素进行了关联配置,输入情报要素和输出情报要素可形成树形数据结构。
请再次参看图4,在本实施例中,快速开发软件方法提供关联函数J。步骤S309由关联函数J执行。关联函数J用于通过指令输入接口I1、指令输出接口O1、函数体输入接口I2、以及函数体输出接口O2将各指令封装体、和/或函数体进行关联。
步骤S311,将另一处理逻辑程序块进行封装处理形成另一函数体。
请结合参看图10和图11,图10示意性地示出步骤S311的子流程图。在本实施例中,步骤S311包括下面步骤。
步骤S1001,从另一处理逻辑程序块中获取未与另一指令封装体和/或函数体关联的指令输入接口和/或函数体输入接口。
步骤S1003,将获取的指令输入接口和/或函数体输入接口作为另一函数体的函数体输入接口。
步骤S1005,从另一处理逻辑程序块中获取未与另一指令封装体和/或函数体关联的指令输出接口/函数体输出接口。
步骤S1007,将获取的指令输出接口和/或函数体输出接口作为另一函数体的函数体输出接口。
步骤S1009,定义调用另一处理逻辑程序块的逻辑体调用函数。
第一方面,由于指令封装体和函数体具有相同框架,可以按设定的规则进行组合生成新的逻辑体以实现当前业务处理的需求。
第二方面,生成新的逻辑体可以根据后续业务处理的需要被调用到新的业务处理流程,从而无需再开发,加快了开发进度。此外,由于本实例提供指令封装体可以调用指令编程语句框架,指令编程语句的组合可以完成各种业务场景的需求。
第二方面,各指令封装体和各函数体的输入情报要素和输出情报要素通过输入接口和输出接口进行配置,即便因为新的业务场景发生变化,也可以快速进行配置,无需通过逐行修改代码,大大提高效率。
第四方面,指令封装体和函数体可调用前端开发软件所采用的编程语句框架和后端编程语句框架,本实施例提供的快速开发软件方法不仅可以实现前端软件(用户界面)开发且还可以实现后端软件开发。
第五方面,各指令封装体和各函数体采用相同的框架,可以将前后端的事件处理函数体和数据处理逻辑体进行关联,将数据处理逻辑体作为事件流中的一个节点进行调用,快速实现前后端软件关联及互通。
第六个方面,由于使用了相同的框架进行调用组合,只需配置指令封装体和/或函数体、指令封装体和/或函数体的输入参数和输出参数、配置指令封装体和/或函数体的先后顺序,无需再编辑更多代码,编程难度大大降低,适合的人群更广,大大降低了软件开发门槛。
请结合参看图8和图9,其示意性地示出用户通过图形输入配置信息的用户界面示意图。在本实例中,用户通过图形输入配置信息即可实现开发前后端软件。具体地,该快速开发软件的方法还包括下面步骤。
步骤S1101,提供用户界面,用户界面包括第一配置页面和第二配置页面。第一配置页面用于供配置前端软件开发所需的配置信息。第二页面用于供配置后端软件开发所需的配置信息。在本实施例中,第一配置页面101和第二配置页面103位于并排显示的两个窗口。由于在开发过程往往需要前端和后端配置过程互相查看和修订,第一配置页面101和第二配置页面103并排显示操作更加方便。
步骤S1103,若用户进入第一配置页面,提供第一可视化图形元素于第一页面以供用户配置事件流图形示意图。第一可视化图形元素包括配置静态页面的页面元素和配置事件流的事件图标。页面元素包括容器、按钮、表格、输入框等。事件图标用于与函数体和指令封装体关联。具体地,响应用户对事件图标的操作生成相应的节点图形以供用户配置各节点图形的关联关系形成配置图示,各节点图形的关联关系用于表示各相应的各函数体和/或各指令封装体的关联关系。在本实施例中,本发明实施例还提供配置线64。具体地,配置图示61由各节点图形62以及连接于两个关联节点图形62之间的配置线64组成。进一步地,节点图形62提供输入端620和输出端622,用户可以通过在关联的节点图形62的输入端620和另一节点的输出端622之间进行连线操作,从而形成配置线64。在本实施例中,可以通过可视化的方式显示出两个节点图形62之间的关联关系,交互更加友好。
在前端开发场景中,处理的对象是页面,即指令封装体和/或函数体的输入情报要素和输出情报要素为页面元素。对页面的逻辑处理就是用程序设计语言来描述一个或者多个页面从一个节点到下一个节点的处理变化过程,即描述在一个节点根据所需的页面情报进行处理后产生下一个节点所需的页面情报。由于每个节点所需的页面情报可以通过页面元素来表示,且页面元素又采用树形结构,因此,可以将每一个节点所需的页面都进行完整刻画。在本实例中还提供了引导用户配置树形结构的页面元素。具体地,在本实例中,第一页面101提供页面配置区63和页面组件图标31。将页面配置区63根据树形存储结构划分成不同的区域。当用户拖拽不同的页面组件图标31于相应的区域时,即可确定各页面元素之间的嵌套关系,例如,父子关系,并列关系等,从而形成出各静态页面的页面元素和页面元素之间的数据存储关系。对于页面和页面之间的数据存储关系,可以在创建每一页面时提供相应的机制,以实现页面的树形存储关系,如图8所示的页面布局33。例如,每创建一个页面时,引导用户建立页面和已存在的页面之间为父子关系还是并列关系。各页面元素采用树形数据存储的页面形成组件。
在本实施中,还提供设定了调用树形结构存储的页面元素的组件调用函数,同时还提供与组件调用函数相关的组件图标31。当组件图标31被选择时,可以调已用树形结构存储的页面元素并对应地显示于页面配置区63。例如,用户可以通过配置需要调用的页面组件
步骤S1105,若用户进入第二配置页面,提供第二可视化图形元素于第二页面以供用户配置数据逻辑处理图形示意图。
请再次参看图9,在本实施例中,用户配置后端软件开发所需的配置信息和用户配置前端软件开发所需的配置信息过程类似,差异在于,指令封装体和/或函数体的输入情报要素和输出情报要素配置不同。由于用户配置前端软件开发所需的配置信息中的情报要素为页面元素,而后端软件开发所需的配置信息中情报要素为信息元素。
在本实施例中,在构建页面时可以也可以不对页面元素进行图形化显示。第二配置页面103提供引导用户构建树形情报要素的具有树形结构的输入框,用户可以通过输入框配置对应的输入情报要素和输出情报要素。
步骤S1107,根据配置示意图与配置信息的对应关系获得用户的配置信息,配置示意图与配置信息的对应关系为:节点图形用于表示需要配置的节点信息;配置线用于表示节点的关联信息;配置于节点图形或者配置线的输入情报要素和输出情报要素用于表示节点的输入情报要素和输出情报要素。
请参看图12,其示意性地示意出配置前端软件开发的配置信息和配置后端软件开发的配置信息的流程示意图。
步骤S1201,提供可视化图形元素供用户的相对应的配置示意图。
步骤S1203,响应用户对指令封装体图标和/或调用图标的操作生成相应的节点图形,每一节点图形包括输入端和/或输出端。
步骤S1205,响应用户对一个节点图形的输入端和另一个节点图形的输出端之间的连线,生成连接于一个节点和另一个节点之间的配置线。
步骤S1207,提供配置界面以供用户配置每一节点图形和/或配置线的输入情报要素和输出情报要素,配置界面包括限制用户以树形结构配置输入情报要素和输出情报要素的输入框。
步骤S1209,利用配置的树形结构对输入情报要素和输出情报要素进行存储。
请参看图7,指令封装体RB和FB、指令编程语句框架FD和RD分别存储于路径95、92、90、94。用户配置的输入情报要素和输出情报要素分别存储于T1和T2中。可以理解地,用户配置表示信息元素的输入情报要素和输出情报要素存储于路径96中。用户配置表示页面元素的输入情报要素和输出情报要素存储于路径95中。其中,用户配置出的函数体RS和FS呈树形结构进行存储。在本实施例中,当创建一个函数体S限制用户以树形结构进行存储函数体S。例如,当创建一个函数体S,显示树形列表供用户下一个节点创建。
上述实施例中,对配置开发前端软件和后端软件采用可视化图形进行配置,只需对可视化图形元素进行操作,例如,拖拽、点击等操作,即可配置出对应的配置信息,根据配置信息调用对应的指令封装体和函数体和配置指令封装体和函数体即可生成所需软件,使得软件开发更加便捷。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本发明实施例的流程或功能。该计算机设备可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、流动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种快速开发软件的方法,其特征在于,所述快速开发软件的方法包括:
提供多个指令封装体、和/或一个或者多个函数体,每一所述指令封装体由一指令编程语句框架进行封装而成;每一所述函数体由一处理逻辑程序块进行封装而成;所述指令封装体和所述函数体具有相同的框架,每一所述指令封装体包括指令输入接口、指令输出接口和指令调用函数,所述函数体包括函数体输入接口、函数体输出接口和函数体调用函数;
获取用户的配置信息,所述配置信息包括需要配置的节点信息、节点的关联信息、节点的输入情报要素和输出情报要素,其中,所述节点信息用于表示需要配置的指令封装体、和/或函数体;所述节点的关联信息用于表示所述需要配置的指令封装体、和/或函数体的连接顺序;所述节点的输入情报要素和所述输出情报要素用于表示需要配置的指令封装体、和/或需要配置的函数体输入情报要素和输出情报要素,其中,互连的两个节点中,一个节点的输入情报要素和另一节点的输出情报要素全部或者部分相同,或者一个节点的输出情报要素与另一节点的输入情报要素全部或者部分相同;
将所述节点的输入情报要素和输出情报要素对应地配置给所述指令输入接口和所述对应的指令输出接口,和/或将所述节点的输入情报要素和输出情报对应地配置给所述函数体输入接口和所述函数体输出接口;
根据所述节点信息,通过所述指令调用函数调用与所述需要配置的指令封装体相对应的指令编程语句框架、和/或通过所述函数体调用函数调用所述需要配置的函数体相对应的处理逻辑程序块;
根据所述关联信息,通过所述指令输入接口和所述指令输出接口、和/或所述函数体输入接口和所述函数体输出接口将所述多个指令封装体、一个或者多个指令封装体和/或函数体进行关联形成另一处理逻辑程序块,其中,当两个所述指令封装体关联时,将所述一个指令封装体的指令输入接口与另一封装体的输出接口进行关联,且所述指令输入接口所配置的输入情报要素为所述输出接口的输出情报要素的部分或者全部情报要素;当两个所述函数体关联时,将所述一个函数体的函数体输入接口和另一函数体的输出接口进行关联,且所述函数体输入接口所配置的输入情报要素为所述函数体输出接口的输出情报要素的部分或者全部情报要素;当一个所述函数体和一个指令封装体关联时,将所述函数体的函数体输入接口或者输出接口和指令封装体的输出接口或者输入接口进行关联,且所述函数体输入接口所配置的输入情报要素被配置为所述指令输出接口的输出情报要素的部分或者全部情报要素,或者所述函数体输出接口所配置的输出情报要素全部或者部分被配置为所述指令封体输入接口的输入情报要素;以及
将所述另一处理逻辑程序块进行封装处理形成另一函数体,所述另一函数体与所述函数体框架相同。
2.如权利要求1所述的快速开发软件的方法,其特征在于,所述指令编程语句框架包括第一指令编程语句框架和/或第二指令编程语句框架,所述第一指令编程语句框架为开发用户界面所需的事件处理指令编程语句框架,所述第二指令编程语句框架为开发后端软件所需的数据处理逻辑指令编程语句框架;所述指令封装体包括对所述第一指令编程语句框架进行封装形成的第一指令封装体、和/或对所述第二指令编程语句框架进行封装形成的第二指令封装体;所述第一指令封装体对应的输入情报要素和输出情报要素为页面元素;所述第二指令封装体对应的输入情报要素和输出情报要素为数据元素。
3.如权利要求2所述的快速开发软件的方法,其特征在于,所述处理逻辑程序块包括事件处理逻辑程序块和数据处理逻辑程序块;所述函数体包括事件处理函数体和数据处理逻辑体;所述事件处理逻辑程序块被封装成所述函数体,所述数据处理逻辑程序块被封装形成所述数据处理逻辑体。
4.如权利要求3所述的快速开发软件的方法,其特征在于,所述节点信息表示需要配置的指令封装体包括所述第一指令封装体和所述第二指令封装体,和/或所述节点信息表示需要配置的函数体包括事件处理函数体和数据处理逻辑体,所述处理逻辑程序块为可调用所述配置的数据处理逻辑体的事件处理程序。
5.如权利要求1所述的快速开发软件的方法,其特征在于,将所述另一处理逻辑程序块进行封装处理形成另一函数体,具体包括:
从所述另一处理逻辑程序块中获取未与另一指令封装体和/或函数体关联的指令输入接口和/或函数体输入接口;
将获取的指令输入接口和/或函数体输入接口作为所述另一函数体的函数体输入接口;
从所述另一处理逻辑程序块中获取未与另一指令封装体和/或函数体关联的指令输出接口/函数体输出接口;
将获取的指令输出接口和/或函数体输出接口作为所述另一函数体的函数体输出接口;
定义调用所述另一处理逻辑程序块的逻辑体调用函数。
6.如权利要求3所述的快速开发软件的方法,其特征在于,用户界面还提供第一配置页面和第二配置页面,所述第一配置页面供用户配置所述数据处理逻辑体,所述第二配置页面供用户配置所述事件处理函数体。
7.如权利要求6所述的快速开发软件的方法,其特征在于,所述快速开发软件的方法还包括:
提供具有可视化图形元素的用户界面供用户相对应的配置示意图,所述配置示意图包括互连的节点图形、连接所述节点图形之间配置线、以及对所述节点图形或者配置线配置的输入情报要素和输出情报要素;
根据所述配置示意图与所述配置信息的对应关系获得所述用户的配置信息,所述配置示意图与所述配置信息的对应关系为:所述节点图形用于表示需要配置的节点信息;所述配置线用于表示节点的关联信息;配置于所述节点图形或者配置线的所述输入情报要素和输出情报要素用于表示节点的输入情报要素和输出情报要素。
8.一种计算机设备,其特征在于,所述计算机设备包括:
存储器,所述存储器用于存储计算机可执行程序;以及
处理器,所述处理器用于执行所述可执行程序以实现如权利要求1~7任意一项所述的快速开发软件的方法。
9.一种存储介质,其特征在于,所述存储介质用于存储计算机可执行程序,所述计算机可执行程序由处理器执行以实现如权利要求1~7任意一项所述的快速开发软件的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010367089.0A CN113590086B (zh) | 2020-04-30 | 2020-04-30 | 快速开发软件的方法、计算机设备、及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010367089.0A CN113590086B (zh) | 2020-04-30 | 2020-04-30 | 快速开发软件的方法、计算机设备、及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113590086A CN113590086A (zh) | 2021-11-02 |
CN113590086B true CN113590086B (zh) | 2023-09-12 |
Family
ID=78237606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010367089.0A Active CN113590086B (zh) | 2020-04-30 | 2020-04-30 | 快速开发软件的方法、计算机设备、及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113590086B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000049498A1 (de) * | 1999-02-20 | 2000-08-24 | Johannes Reichardt | Verfahren und system zur visuellen programmierung |
AU2002950444A0 (en) * | 2002-07-29 | 2002-09-12 | Interad Technology Limited | Bi-directional programming system/method for program development |
US6763515B1 (en) * | 2000-06-05 | 2004-07-13 | National Instruments Corporation | System and method for automatically generating a graphical program to perform an image processing algorithm |
CN104331294A (zh) * | 2014-11-05 | 2015-02-04 | 中国建设银行股份有限公司 | 一种可视化程序生成方法和装置 |
CN109271157A (zh) * | 2018-09-07 | 2019-01-25 | 深圳市东微智能科技股份有限公司 | 软件开发方法、设备及计算机可读存储介质 |
CN110383247A (zh) * | 2017-04-28 | 2019-10-25 | 伊纽迈茨有限公司 | 由计算机执行的方法、计算机可读介质与异构计算系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7412658B2 (en) * | 2002-11-14 | 2008-08-12 | Sap Ag | Modeling system for graphic user interface |
US8640086B2 (en) * | 2006-12-29 | 2014-01-28 | Sap Ag | Graphical user interface system and method for presenting objects |
US10101976B2 (en) * | 2015-04-30 | 2018-10-16 | OpenMethods, Inc. | Method, system and apparatus for visual programming of interaction workflows for omni-channel customer contact centers with integrated customer relationship management |
-
2020
- 2020-04-30 CN CN202010367089.0A patent/CN113590086B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000049498A1 (de) * | 1999-02-20 | 2000-08-24 | Johannes Reichardt | Verfahren und system zur visuellen programmierung |
US6763515B1 (en) * | 2000-06-05 | 2004-07-13 | National Instruments Corporation | System and method for automatically generating a graphical program to perform an image processing algorithm |
AU2002950444A0 (en) * | 2002-07-29 | 2002-09-12 | Interad Technology Limited | Bi-directional programming system/method for program development |
CN104331294A (zh) * | 2014-11-05 | 2015-02-04 | 中国建设银行股份有限公司 | 一种可视化程序生成方法和装置 |
CN110383247A (zh) * | 2017-04-28 | 2019-10-25 | 伊纽迈茨有限公司 | 由计算机执行的方法、计算机可读介质与异构计算系统 |
CN109271157A (zh) * | 2018-09-07 | 2019-01-25 | 深圳市东微智能科技股份有限公司 | 软件开发方法、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113590086A (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021217660A1 (zh) | 实现图形化无代码开发用户界面的方法、计算机设备、存储介质 | |
CN113590104B (zh) | 实现图形化无代码软件开发平台及方法 | |
WO2021217661A1 (zh) | 一种实现图形化无代码软件开发平台及方法、计算机设备及存储介质 | |
CN113590103B (zh) | 实现图形化无代码开发用户界面的方法、计算机设备、存储介质 | |
CN111176629A (zh) | 一种应用开发的方法和装置 | |
CN112214210A (zh) | 后勤业务规则引擎及其配置方法、装置、设备和存储介质 | |
CN114996619A (zh) | 一种页面显示的方法、装置、计算机设备及存储介质 | |
US9064240B2 (en) | Application based on node types associated with implicit backtracking | |
US9280361B2 (en) | Methods and systems for a real time transformation of declarative model and layout into interactive, digital, multi device forms | |
CN109614094B (zh) | 基于UML的GPU glCallList视图模型的绘制方法 | |
US10698667B2 (en) | Compiler with type inference and target code generation | |
CN115202623A (zh) | 一种业务能力使用方法、装置以及设备 | |
CN114217789A (zh) | 功能组件拓展方法、装置、设备、存储介质及程序产品 | |
US11689630B2 (en) | Request processing method and apparatus, electronic device, and computer storage medium | |
CN113590086B (zh) | 快速开发软件的方法、计算机设备、及存储介质 | |
JP4836412B2 (ja) | グラフィカル・ユーザ・インタフェースを生成する方法および装置 | |
CN111596905A (zh) | 生成java对象的方法、装置、存储介质及终端 | |
WO2021217657A1 (zh) | 快速开发软件的方法、计算机设备、及存储介质 | |
WO2023128793A1 (ru) | Система и способ динамической визуализации элементов программного обеспечения | |
US8296731B2 (en) | Dynamic method selection based on declarative requirements of interaction scope | |
JP2013235508A (ja) | オブジェクト指向プログラム生成装置、その方法、プログラム | |
US20110239185A1 (en) | Representing the structure of a data format using a class-based representation | |
CN113687880A (zh) | 一种调用组件的方法、装置、设备和介质 | |
CN113590087A (zh) | 快速开发软件的方法、计算机设备、及存储介质 | |
WO2021217656A1 (zh) | 快速开发软件的方法、计算机设备、及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: Room 1102, Unit 2, Building 3, Tian'an Digital City, No. 1, Huangjin Road, Nancheng Street, Dongguan City, Guangdong Province, 523000 Applicant after: Guangdong Zhongtong Internet of Things Technology Co.,Ltd. Address before: 518000 Room 201, building A, 1 front Bay Road, Shenzhen Qianhai cooperation zone, Shenzhen, Guangdong Applicant before: SHENZHEN ZHONGTONG INTERNET OF THINGS TECHNOLOGY Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |