CN107273117B - 一种编程友好型的敏捷代码自动生成系统 - Google Patents

一种编程友好型的敏捷代码自动生成系统 Download PDF

Info

Publication number
CN107273117B
CN107273117B CN201710378087.XA CN201710378087A CN107273117B CN 107273117 B CN107273117 B CN 107273117B CN 201710378087 A CN201710378087 A CN 201710378087A CN 107273117 B CN107273117 B CN 107273117B
Authority
CN
China
Prior art keywords
code
description
data
attribute
initial
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
Application number
CN201710378087.XA
Other languages
English (en)
Other versions
CN107273117A (zh
Inventor
徐志宏
邓志强
吴澳
李克莱
张华杰
王国彬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tubatu Group Co Ltd
Original Assignee
Tubatu Group Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tubatu Group Co Ltd filed Critical Tubatu Group Co Ltd
Priority to CN201710378087.XA priority Critical patent/CN107273117B/zh
Publication of CN107273117A publication Critical patent/CN107273117A/zh
Application granted granted Critical
Publication of CN107273117B publication Critical patent/CN107273117B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种编程友好型的敏捷代码自动生成系统,涉及敏捷计算机编程开发技术领域,解决了代码生成器局限性大,扩展性差的问题。该系统包括代码生成器、数据描述文本和代码模板,数据描述文本被解析后输入至代码生成器的代码生成引擎,然后结合代码模板由代码生成引擎生成初始代码,再由代码验证器对生成的代码进行验证并查看结果,最后由代码管理系统对生成的代码进行管理,并将结果展示给用户,由用户选择下一个步骤,如下载代码、执行数据库语句等操作。本发明解决了现有技术下代码生成器局限性大,扩展性差的问题,其基于多代码模板的代码生成与具体代码的解耦,降低了代码耦合度,提高了扩展性,可以很好地满足定制化需求。

Description

一种编程友好型的敏捷代码自动生成系统
技术领域
本发明涉及敏捷计算机编程开发技术领域,尤其涉及一种编程友好型的敏捷代码自动生成系统。
背景技术
随着IT行业的不断发展,软件开发的复杂度也随着不断提高。与此同时,软件的开发团队也越来越庞大,而如何更好地协同整个团队进行高效准确的工作,从而确保软件开发的质量已经慢慢成为了开发过程中不可回避的问题。
在软件开发中,不同的功能模块一般由不同的开发成员负责,同一功能模块的各层代码也可能是不同的开发成员编写,经验告诉我们,模块之间的问题是最难解决的,也是最耗费时间的。它需要多个开发人员相互协作找出问题,而协作过程中的沟通所消耗的时间成本是相当高的,而且还可能因为沟通的不足导致模块返工。
在这个过程中,当一个模型中涉及到多个表结构时,即使其涉及到字段的新增、修改和删除,也需要重新进行代码的制作,从而使得在代码生成过程中,需要过多的人工参与以及需要大量的时间和人力进行重复性的代码制作工作。现有技术中虽然也有一些代码生成器,但其都是针对某一种特定的系统进行开发的,不具有通用性,也不可避免代码制作过程中的重复性工作。可见,现有的代码生成器一般是按照的一种特定的格式,生成一种特定框架定义好的目录结构以及该特定框架事先定义的命名规则的文件,而在实际的项目中框架及目录各方面应当由项目本身所定制,在使用过程中无法记录历史每一次脚本变更记录,也不具备在同一次变更中的脚本自动合并的能力,局限性大,扩展性差。
发明内容
为解决上述的技术问题,本发明提供了一种编程友好型的敏捷代码自动生成系统,本发明提出的方法解决了现有技术下代码生成器局限性大,扩展性差的问题。
本发明实现上述技术效果所采用的技术方案是:
一种编程友好型的敏捷代码自动生成系统,所述系统包括:
数据描述文本,用于建立待生成的代码的数据描述;
代码模板,用于接受填入至数据描述文本解析出的参数;
代码生成器,包括描述解析器和代码生成引擎,所述描述解析器用于将数据描述文本中的数据描述进行解析;
所述代码生成引擎通过扫描相应的代码模板的占位符,找到所述描述解析器解析出的相应的数据进行填充,组装出对应功能模块的初始代码;
合并组装模块,由代码验证器对生成的初始代码进行验证,验证通过后将每个功能模块对应的初始代码按照逻辑结构进行合并组装,同时单独存储每个功能模块对应的初始代码;
分发模块,将单个功能模块与合并组装后的初始代码进行一对一关联映射,并赋予每个功能模块指向该对应功能模块开发组的代码接收容器的指针,用于在相应的功能模块的初始代码生成后被分发至对应的模块开发组的代码接收容器。
上述的编程友好型的敏捷代码自动生成系统,所述数据描述文本为XML文本。
上述的编程友好型的敏捷代码自动生成系统,所述描述解析器对所述XML文档进行解析的过程包括:
获取根节点,通过库函数ElementDocument.getRootElement()获取所述XML文档的根节点;
获取子节点元素,在获得根节点之后,利用递归下降法从根节点寻找其子节点,构造语法树;
获得命令参数,通过遍历整个XML文档结构,提取出所有的属性,再按照非参数属性识别规则排除整个XML文档结构中的非参数,生成命令文本模板,成对所述XML文档的解析。
上述的编程友好型的敏捷代码自动生成系统,从根节点寻找其子节点以构造语法树的过程通过函数ElementElement.getChild(Stringname)和函数ListElement.getChildren(Stringname)完成,包括步骤:
函数ElementElement.getChild(Stringname)从父节点得到名称为name的单一子节点,函数返回值为空表示有0个元素;函数Element.getChildren(Stringname)用于获取多个子元素,对于List中的每一个元素,通过List的迭代器获取,List中的元素个数通过List的size()方法确定。
上述的编程友好型的敏捷代码自动生成系统,对应功能模块的初始代码的组装过程包括:
检查所述描述解析器解析出的描述文件的文档语法、组织结构是否无误,验证录入的解析数据类型是否正确,如查出描述文档的内容不符合文档规定,则抛出异常信息;
读取所述描述解析器解析出的描述文件,并抽取其中的解析数据并加载到内存中以待访问;
将解析数据填入相应的初始代码中。
上述的编程友好型的敏捷代码自动生成系统,所述XML描述文件包括rml元素、system元素、actor元素、connect元素、editable元素、param元素、port元素、src_port元素、dest_port元素、src_actor元素和dest_actor元素中的部分或全部。
上述的编程友好型的敏捷代码自动生成系统,读取所述描述解析器解析出的描述文件的具体过程为:
以命令行为单位,每读入一行进行分析,当遇到一个标题行时表示一个命令说明的开始,循环匹配直到出现另一个标题行时,表示结束对这个命令的说明;
将分析出的所有命令的结构化数据作为解析结果存放在列表容器中,供代码模板对参数的提取以及代码的生成。
上述的编程友好型的敏捷代码自动生成系统,对命令行的分析采用表驱动的方式进行分析,该表为一个三维表,其中,第一维表示当前的分析状态,第二维表示当前输入行,第三维的值为“0”或“1”,其中“0”元素表示动作,“1”元素表示下一个状态,通过执行指定的动作并转到下一个状态,循环对每一行进行分析。
上述的编程友好型的敏捷代码自动生成系统,对应每个功能模块的初始代码均有序存储在初始代码容器中,每个功能模块的初始代码分别与合并组装后的初始代码进行一对一关联映射,每个功能模块具有指向与对应功能模块开发组的代码接收容器的指针,用于在相应的功能模块的初始代码在生成后分发至对应的模块开发组的代码接收容器。
上述的编程友好型的敏捷代码自动生成系统,所述的非参数识别规则包括两个规则项:属性名识别规则和属性值识别;判断某属性为非参数属性的判断规则为:当某个属性同时满足两个规则项时,则该属性被视为非参数属性,若一个规则项为空则只要满足另一个规则项,该属性被视为非参数属性。
本发明的有益效果是:本发明解决了现有技术下代码生成器局限性大,扩展性差的问题,其基于多代码模板的代码生成与具体代码的解耦,降低了代码耦合度,提高了扩展性,可以很好地满足定制化需求。针对每个功能模块单独生成对应的初始代码,以及将各功能模块按照逻辑结构进行合并组装,使得软件开发人员有一个全局的框架结构。通过将各独立的功能模块的对应初始代码和合并组装后的全局的初始代码打包分发给相应的开发组,使得该相应功能模块开发组的开发人员在独立进行单功能模块的开发过程中有一个较好的指导性框架,便于后期的调试和维护。
附图说明
图1为本发明实施例的结构框图;
图2为本发明实施例的架构图;
图3为本发明实施例的流程图。
具体实施方式
为了对本发明作出更加清楚完整地说明,下面结合附图和本发明的具体实施例对本发明的技术方案作出进一步说明。
如图1至图3所示,本发明提出的一种编程友好型的敏捷代码自动生成系统,该系统包括:
数据描述文本,用于建立待生成的代码的数据描述;
代码模板,用于接受填入至数据描述文本解析出的参数;
代码生成器,包括描述解析器和代码生成引擎,所述描述解析器用于将数据描述文本中的数据描述进行解析;
所述代码生成引擎通过扫描相应的代码模板的占位符,找到所述描述解析器解析出的相应的数据进行填充,组装出对应功能模块的初始代码;
合并组装模块,由代码验证器对生成的初始代码进行验证,验证通过后将每个功能模块对应的初始代码按照逻辑结构进行合并组装,同时单独存储每个功能模块对应的初始代码;
分发模块,将单个功能模块与合并组装后的初始代码进行一对一关联映射,并赋予每个功能模块指向该对应功能模块开发组的代码接收容器的指针,用于在相应的功能模块的初始代码生成后被分发至对应的模块开发组的代码接收容器。
每个功能模块对应的初始代码由代码验证器对其进行验证,验证通过后将每个功能模块对应的初始代码按照逻辑结构进行合并组装,同时单独存储每个功能模块对应的初始代码,最后将单个功能模块对应的初始代码以及合并组装后的初始代码分发给对应功能模块的开发组。
数据描述可以通过输入界面,如用户接口UI界面,生成数据描述。由于数据描述语句是对用户比较友好的,也可以由用户手动输入建立数据。数据描述包括按照预设规则语法进行定义的关键字和业务逻辑,由于XML文件能够更好的体现结构层级关系、更容易被程序语言识别,同时也可以检验需求文档是否符合语法逻辑。另外,XML文件是一种中间语言的角色,可以起到承上启下的作用,每一个关键字都将成为XML中的一个元素,可以是一个node,也可以是一个属性。在它转化成XML后,会有节点名称表示(如,节点里面是用于描述数据字典里的内容)。XML文档具有文件格式良好、数据表达完整、验证容易、便于程序访问等特点。该XML文档中的结构和组织由XMLScheme来定义,XMLScheme规定了业务模型必须提供的内容,具体包括业务组件名称、包名、业务对象类名称、属性名称、类型、长度、对应的数据表段长度。该XML描述文件包括rml元素、system元素、actor元素、connect元素、editable元素、param元素、port元素、src_port元素、dest_port元素、src_actor元素和dest_actor元素中的部分或全部。
代码模板,根据功能需求,准备相应的代码模板,如插入数据、删除数据、查找数据、增加数据等等。模板是最终生成代码的原型,根据模板可以生成规范和可用的代码。良好的模板设计包含了软件设计和开发人员多年的经验,确保了生成代码的品质,并可以生成大部分的业务逻辑。涉及J2EE各层次的模板共五个,包括Pojo.vm,POJO业务对象模板;Dao.vm,业务对象的数据访问接口模板;
DaoHibernateImpl.vm,基于Hibernate的数据访问层接口实现模板;
Service.vm,服务层接口模板;Servicempl.vmI,服务层接口实现模板。
具体的,在本发明的优选实施例中,描述解析器对所述XML文档进行解析的过程包括:
获取根节点,通过库函数ElementDocument.getRootElement()获取所述XML文档的根节点;
获取子节点元素,在获得根节点之后,利用递归下降法从根节点寻找其子节点,构造语法树;
获得命令参数,通过遍历整个XML文档结构,提取出所有的属性,再按照非参数属性识别规则排除整个XML文档结构中的非参数,生成命令文本模板,成对所述XML文档的解析。
从根节点寻找其子节点以构造语法树的过程通过函数ElementElement.getChild(Stringname)和函数ListElement.getChildren(Stringname)完成,包括步骤:函数ElementElement.getChild(Stringname)从父节点得到名称为name的单一子节点,函数返回值为空表示有0个元素;函数Element.getChildren(Stringname)用于获取多个子元素,对于List中的每一个元素,通过List的迭代器获取,List中的元素个数通过List的size()方法确定。
所述的非参数识别规则包括两个规则项:属性名识别规则和属性值识别;判断某属性为非参数属性的判断规则为:当某个属性同时满足两个规则项时,则该属性被视为非参数属性,若一个规则项为空则只要满足另一个规则项,该属性被视为非参数属性。
通过扫描相应的代码模板的占位符,找到所述描述解析器解析出的相应的数据进行填充,组装出对应功能模块的初始代码。对应功能模块的初始代码的组装过程包括:
检查所述描述解析器解析出的描述文件的文档语法、组织结构是否无误,验证录入的解析数据类型是否正确,如查出描述文档的内容不符合文档规定,则抛出异常信息;
读取所述描述解析器解析出的描述文件,并抽取其中的解析数据并加载到内存中以待访问;
将解析数据填入相应的初始代码中。
读取所述描述解析器解析出的描述文件的具体过程为:
以命令行为单位,每读入一行进行分析,当遇到一个标题行时表示一个命令说明的开始,循环匹配直到出现另一个标题行时,表示结束对这个命令的说明;
将分析出的所有命令的结构化数据作为解析结果存放在列表容器中,供代码模板对参数的提取以及代码的生成。
对命令行的分析采用表驱动的方式进行分析,该表为一个三维表,其中,第一维表示当前的分析状态,第二维表示当前输入行,第三维的值为“0”或“1”,其中“0”元素表示动作,“1”元素表示下一个状态,通过执行指定的动作并转到下一个状态,循环对每一行进行分析。对应每个功能模块的初始代码均有序存储在初始代码容器中,每个功能模块的初始代码分别与合并组装后的初始代码进行一对一关联映射,每个功能模块具有指向与对应功能模块开发组的代码接收容器的指针,用于在相应的功能模块的初始代码在生成后分发至对应的模块开发组的代码接收容器。
解析数据填入初始代码的过程是:该解析数据按照规定格式进行套取,加载到对应的结点和常量替换,从而生成初步的代码规范,并对应的生成包含映射类、实体类、接口类、业务逻辑类四个文件。并根据设置的属性,添加包结构和路径,以及引用、备注、版本信息,生成对应的业务层代码。
本发明解决了现有技术下代码生成器局限性大,扩展性差的问题,其基于多代码模板的代码生成与具体代码的解耦,降低了代码耦合度,提高了扩展性,可以很好地满足定制化需求。针对每个功能模块单独生成对应的初始代码,以及将各功能模块按照逻辑结构进行合并组装,使得软件开发人员有一个全局的框架结构。通过将各独立的功能模块的对应初始代码和合并组装后的全局的初始代码打包分发给相应的开发组,使得该相应功能模块开发组的开发人员在独立进行单功能模块的开发过程中有一个较好的指导性框架,便于后期的调试和维护。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (4)

1.一种编程友好型的敏捷代码自动生成系统,其特征在于,所述系统包括:
数据描述文本,用于建立待生成的代码的数据描述;所述数据描述文本为XML文本;所述数据描述包括按照预设规则语法进行定义的关键字和业务逻辑;每一个关键字均为XML文档中的一个元素;所述元素为节点或属性;该XML文档结构和组织由XMLScheme来定义,XMLScheme规定了业务模型必须提供的内容,具体包括业务组件名称、包名、业务对象类名称、属性名称、类型、长度、对应的数据表段长度;
代码模板,用于接受填入至数据描述文本解析出的参数,以生成与所述业务逻辑对应的功能模块的初始代码;
代码生成器,包括描述解析器和代码生成引擎,所述描述解析器用于将数据描述文本中的数据描述进行解析;所述代码生成引擎通过扫描相应的代码模板的占位符,找到所述描述解析器解析出的相应的数据进行填充,组装出对应功能模块的初始代码;所述描述解析器对所述XML文档进行解析的过程包括:
获取根节点,通过库函数ElementDocument.getRootElement()获取所述XML文档的根节点;
获取子节点元素,在获得根节点之后,利用递归下降法从根节点寻找其子节点,构造语法树;
获得命令参数,通过遍历整个XML文档结构,提取出所有的属性,再按照非参数属性识别规则排除整个XML文档结构中的非参数,生成命令文本模板,成对所述XML文档的解析;
所述的非参数识别规则包括两个规则项:属性名识别规则和属性值识别;判断某属性为非参数属性的判断规则为:当某个属性同时满足两个规则项时,则该属性被视为非参数属性,若一个规则项为空则只要满足另一个规则项,该属性被视为非参数属性;
合并组装模块,由代码验证器对生成的初始代码进行验证,验证通过后将每个功能模块对应的初始代码按照逻辑结构进行合并组装,同时单独存储每个功能模块对应的初始代码;对应功能模块的初始代码的组装过程包括:
检查所述描述解析器解析出的描述文件的文档语法、组织结构是否无误,验证录入的解析数据类型是否正确,如查出描述文档的内容不符合文档规定,则抛出异常信息;
读取所述描述解析器解析出的描述文件,并抽取其中的解析数据并加载到内存中以待访问;
读取所述描述解析器解析出的描述文件的具体过程为:
以命令行为单位,每读入一行进行分析,当遇到一个标题行时表示一个命令说明的开始,循环匹配直到出现另一个标题行时,表示结束对这个命令的说明;对命令行的分析采用表驱动的方式进行分析,该表为一个三维表,其中,第一维表示当前的分析状态,第二维表示当前输入行,第三维的值为“0”或“1”,其中“0”元素表示动作,“1”元素表示下一个状态,通过执行指定的动作并转到下一个状态,循环对每一行进行分析;
将分析出的所有命令的结构化数据作为解析数据存放在列表容器中,供代码模板对参数的提取以及代码的生成;
将解析数据填入相应的初始代码中;解析数据按照规定格式进行套取,加载到对应的结点和常量替换,从而生成初步的代码规范,并对应的生成包含映射类、实体类、接口类、业务逻辑类四个文件;根据设置的属性,添加包结构和路径,以及引用、备注、版本信息,生成对应的业务层代码;
分发模块,将单个功能模块与合并组装后的初始代码进行一对一关联映射,并赋予每个功能模块指向该对应功能模块开发组的代码接收容器的指针,用于在相应的功能模块的初始代码生成后被分发至对应的模块开发组的代码接收容器。
2.根据权利要求1所述的编程友好型的敏捷代码自动生成系统,其特征在于,从根节点寻找其子节点以构造语法树的过程通过函数ElementElement.getChild(Stringname)和函数ListElement.getChildren(Stringname)完成,包括步骤:
函数ElementElement.getChild(Stringname)从父节点得到名称为name的单一子节点,函数返回值为空表示有0个元素;函数Element.getChildren(Stringname)用于获取多个子元素,对于List中的每一个元素,通过List的迭代器获取,List中的元素个数通过List的size()方法确定。
3.根据权利要求1所述的编程友好型的敏捷代码自动生成系统,其特征在于,所述XML描述文件包括rml元素、system元素、actor元素、connect元素、editable元素、param元素、port元素、src_port元素、dest_port元素、src_actor元素和dest_actor元素中的部分或全部。
4.根据权利要求1所述的编程友好型的敏捷代码自动生成系统,其特征在于,对应每个功能模块的初始代码均有序存储在初始代码容器中,每个功能模块的初始代码分别与合并组装后的初始代码进行一对一关联映射,每个功能模块具有指向与对应功能模块开发组的代码接收容器的指针,用于在相应的功能模块的初始代码在生成后分发至对应的模块开发组的代码接收容器。
CN201710378087.XA 2017-05-25 2017-05-25 一种编程友好型的敏捷代码自动生成系统 Active CN107273117B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710378087.XA CN107273117B (zh) 2017-05-25 2017-05-25 一种编程友好型的敏捷代码自动生成系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710378087.XA CN107273117B (zh) 2017-05-25 2017-05-25 一种编程友好型的敏捷代码自动生成系统

Publications (2)

Publication Number Publication Date
CN107273117A CN107273117A (zh) 2017-10-20
CN107273117B true CN107273117B (zh) 2021-04-09

Family

ID=60065281

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710378087.XA Active CN107273117B (zh) 2017-05-25 2017-05-25 一种编程友好型的敏捷代码自动生成系统

Country Status (1)

Country Link
CN (1) CN107273117B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10838699B2 (en) 2017-01-18 2020-11-17 Oracle International Corporation Generating data mappings for user interface screens and screen components for an application
CN107908394B (zh) * 2017-11-21 2020-03-10 中国电子科技集团公司第五十四研究所 一种数据交换格式化源代码生成方法及装置
CN108345988A (zh) * 2018-01-22 2018-07-31 广州欧赛斯信息科技有限公司 一种基于容器平台的敏捷软件协同开发管理系统
US10489126B2 (en) * 2018-02-12 2019-11-26 Oracle International Corporation Automated code generation
CN108509201A (zh) * 2018-03-20 2018-09-07 深圳神州数码云科数据技术有限公司 一种代码生成方法和装置
CN108647019B (zh) * 2018-05-14 2021-08-31 浪潮通用软件有限公司 一种服务组合的控制层编码方法
CN108762764A (zh) * 2018-06-05 2018-11-06 中国平安人寿保险股份有限公司 代码自动生成方法、装置、计算机设备及存储介质
CN108804322A (zh) * 2018-06-05 2018-11-13 中国平安人寿保险股份有限公司 自动化测试方法、装置、计算机设备及存储介质
CN109408043B (zh) * 2018-10-19 2021-10-22 中国银行股份有限公司 一种程序生成方法及装置
CN109670601B (zh) * 2018-12-21 2021-06-29 拉扎斯网络科技(上海)有限公司 机器学习特征生成方法及装置、电子设备和存储介质
CN109799985B (zh) * 2019-01-23 2022-06-03 中国银行股份有限公司 前端代码生成方法及装置、存储介质及电子设备
CN110209766B (zh) * 2019-05-23 2021-01-29 招商局金融科技有限公司 数据展示方法、电子装置及存储介质
CN111142871B (zh) * 2019-12-24 2023-06-06 杭州安恒信息技术股份有限公司 一种前端页面开发系统、方法、设备、介质
CN112269566B (zh) * 2020-11-03 2022-09-02 支付宝(杭州)信息技术有限公司 脚本生成处理方法、装置、设备及系统
CN114755990B (zh) * 2022-04-25 2022-10-28 深圳市赛诺梵科技有限公司 一种工业自动化产线低代码控制系统及其控制方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2002335742A1 (en) * 2001-09-11 2003-04-01 Syncobs, Inc. Multi-level data management system
CN101256492A (zh) * 2008-03-31 2008-09-03 宋乃辉 一种进行模型驱动架构的软件开发方法及其系统
US8046376B2 (en) * 2003-12-08 2011-10-25 Ebay Inc. Method and system to automatically generate classes for an object to relational mapping system
CN102968306A (zh) * 2012-11-29 2013-03-13 广东全通教育股份有限公司 一种基于数据模型驱动的代码自动生成方法和系统
CN103135976A (zh) * 2011-11-30 2013-06-05 阿里巴巴集团控股有限公司 代码自动生成方法及装置
CN104267966A (zh) * 2014-10-15 2015-01-07 北京国双科技有限公司 软件的程序代码的生成方法及装置
CN108369578A (zh) * 2016-02-01 2018-08-03 微软技术许可有限责任公司 基于先前文档的自动模板生成

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030196168A1 (en) * 2002-04-10 2003-10-16 Koninklijke Philips Electronics N.V. Method and apparatus for modeling extensible markup language (XML) applications using the unified modeling language (UML)
CN104035754A (zh) * 2013-03-05 2014-09-10 北大方正集团有限公司 一种基于xml的自定义代码生成方法及生成器
CN104331285A (zh) * 2014-10-30 2015-02-04 北京思特奇信息技术股份有限公司 一种代码自动生成方法及系统
CN105260189A (zh) * 2015-11-02 2016-01-20 江苏马上游科技股份有限公司 基于模型驱动生成代码的方法及系统
CN106095408B (zh) * 2016-05-31 2019-05-14 浙江网新恒天软件有限公司 一种数据监控和代码自动生成与部署的系统及方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2002335742A1 (en) * 2001-09-11 2003-04-01 Syncobs, Inc. Multi-level data management system
US8046376B2 (en) * 2003-12-08 2011-10-25 Ebay Inc. Method and system to automatically generate classes for an object to relational mapping system
CN101256492A (zh) * 2008-03-31 2008-09-03 宋乃辉 一种进行模型驱动架构的软件开发方法及其系统
CN103135976A (zh) * 2011-11-30 2013-06-05 阿里巴巴集团控股有限公司 代码自动生成方法及装置
CN102968306A (zh) * 2012-11-29 2013-03-13 广东全通教育股份有限公司 一种基于数据模型驱动的代码自动生成方法和系统
CN104267966A (zh) * 2014-10-15 2015-01-07 北京国双科技有限公司 软件的程序代码的生成方法及装置
CN108369578A (zh) * 2016-02-01 2018-08-03 微软技术许可有限责任公司 基于先前文档的自动模板生成

Also Published As

Publication number Publication date
CN107273117A (zh) 2017-10-20

Similar Documents

Publication Publication Date Title
CN107273117B (zh) 一种编程友好型的敏捷代码自动生成系统
CN107291450B (zh) 一种编程友好型的敏捷代码自动生成方法
CN104866426B (zh) 软件测试综合控制方法及系统
KR101314949B1 (ko) 통합 환경 생성기
KR101307711B1 (ko) 소프트웨어 자산 기반 솔루션을 개발하기 위한 일관된 방법, 시스템 및 컴퓨터 프로그램
US7694272B2 (en) Method, a language and a system for the definition and implementation of software solutions by using a visualizable computer executable modeling language
CN110825362A (zh) 低代码应用软件开发系统及方法
CN114625353A (zh) 模型框架代码生成系统及方法
US20040111702A1 (en) Method and apparatus for visual programming
CN106293664A (zh) 代码生成方法及装置
CN112860260B (zh) 一种在高校场景下基于web的跨平台应用构建工具及方法
CN101689111A (zh) 软件需求验证的自动化管理
CN111695805B (zh) 一种面向法律合同的智能合约模型构建方法及系统
CN105531672A (zh) 解析器生成
Jézéquel Model‐Driven Engineering for Software Product Lines
CN111078555A (zh) 一种测试文件的生成方法、系统、服务器和存储介质
CN110209389A (zh) 一种基于xml的数据生成工具开发系统
CN115993966B (zh) 应用开发系统及方法
US20050137839A1 (en) Methods, apparatus and programs for system development
CN116755669A (zh) 一种基于dsl语言操作模型的低代码开发方法和工具
Dimitrieski Model-Driven Technical Space Integration Based on a Mapping Approach
CN115904480A (zh) 代码重构方法、装置、电子设备及存储介质
CN110019177A (zh) 规则存储的方法和装置
Malavolta Software Architecture Modeling by Reuse, Composition and Customization
Drago Quality driven model transformations for feedback provisioning

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
CB02 Change of applicant information

Address after: 518000 R & D building 3501, block a, building 7, Vanke Cloud City Phase I, Xingke 1st Street, Xili community, Xili street, Nanshan, Shenzhen, Guangdong

Applicant after: Tubatu Group Co.,Ltd.

Address before: 1001-a, 10th floor, bike technology building, No.9, Keke Road, high tech Zone, Nanshan District, Shenzhen, Guangdong 518000

Applicant before: SHENZHEN BINCENT TECHNOLOGY Co.,Ltd.

CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Xu Zhihong

Inventor after: Deng Zhiqiang

Inventor after: Wu Ao

Inventor after: Li Kelai

Inventor after: Zhang Huajie

Inventor after: Wang Guobin

Inventor before: Xu Zhihong

Inventor before: Deng Zhiqiang

Inventor before: Wu Ao

Inventor before: Li Kelai

Inventor before: Zhang Huajie

Inventor before: Wang Guobin

GR01 Patent grant
GR01 Patent grant