CN110442329A - 代码段的生成方法、装置、存储介质及计算机设备 - Google Patents
代码段的生成方法、装置、存储介质及计算机设备 Download PDFInfo
- Publication number
- CN110442329A CN110442329A CN201910562296.9A CN201910562296A CN110442329A CN 110442329 A CN110442329 A CN 110442329A CN 201910562296 A CN201910562296 A CN 201910562296A CN 110442329 A CN110442329 A CN 110442329A
- Authority
- CN
- China
- Prior art keywords
- code
- parameter
- module
- function
- functional module
- 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.)
- Pending
Links
Classifications
-
- 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/31—Programming languages or programming paradigms
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Stored Programmes (AREA)
Abstract
本申请涉及计算机技术领域,尤其涉及一种代码段的生成方法、装置、存储介质及计算机设备。其中,代码段的生成方法,包括:获取代码生成的需求信息,根据所述需求信息调用并展示代码参数配置界面;在所述代码参数配置界面上设置所述需求信息对应的功能模块和代码参数模块;接收用户在所述功能模块上选择的代码功能以及在所述代码参数模块上输入的代码处理参数,根据所述代码功能和所述代码处理参数生成配置文件;当接收到代码生成指令时,读取所述配置文件中的代码功能,从数据库中调取与所述代码功能相关联的底层代码,并根据所述代码处理参数的规则将所述底层代码生成目标代码段。本申请提供的方案,能够实现目标代码段的个性化定制。
Description
技术领域
本申请涉及计算机技术领域,具体而言,本申请涉及一种代码段的生成方法、装置、存储介质及计算机设备。
背景技术
软件开发过程,一般是选择一种或者多种开发者熟悉的开源框架,并从头组织这些框架的依赖关系,然后以这些框架为基础进行代码编写工作,大部分的基础代码的编写繁琐且重复,占据了大部分的开发时间,很容易产生BUG(错误),而且,不同开发者的代码编写习惯不同,在后续代码维护过程中,维护难度大。
为了解决上述人为差异导致的代码维护难度大的问题,现有技术往往采用代码生成工具进行代码的生成,代码生成工具可以根据事先写好的模板及用户提供的数据库结构生成代码,但代码生成规则较为固定,生成代码实现的功能较为单一,无法满足用户需求。
发明内容
本申请提供了一种代码段的生成方法、装置、计算机可读存储介质及计算机设备,根据用户选择的功能模块及代码参数模块生成配置文件,再根据配置文件生成的目标代码段,实现目标代码段的个性化定制,提高目标代码段生成的灵活性。
本申请实施例首先提供了一种代码段的生成方法,包括:
获取代码生成的需求信息,根据所述需求信息调用并展示代码参数配置界面;
在所述代码参数配置界面上设置所述需求信息对应的功能模块和代码参数模块;
接收用户在所述功能模块上选择的代码功能以及在所述代码参数模块上输入的代码处理参数,根据所述代码功能和所述代码处理参数生成配置文件;
当接收到代码生成指令时,读取所述配置文件中的代码功能,从数据库中调取与所述代码功能相关联的底层代码,并根据所述代码处理参数的规则将所述底层代码生成目标代码段。
在一种实施例中,所述从数据库中调取与所述代码功能相关联的底层代码的步骤之前,还包括:
创建所述代码功能与底层代码之间的关联,将所述关联存储于数据库中,并将所述代码功能对应的功能模块置于所述代码参数配置界面中。
在一种实施例中,所述根据所述代码功能和所述代码处理参数生成配置文件的步骤之后,还包括:
根据所述配置文件的代码处理参数确定数据结构和用于数据处理的SQL脚本,以便利用所述数据结构和所述SQL脚本对数据进行增删查改处理,所述数据结构用于对数据的存储、组织及操作过程中的数据格式进行限定。
在一种实施例中,所述接收用户在所述功能模块上选择的代码功能以及在所述代码参数模块上输入的代码处理参数的步骤之后,还包括:
若所述功能模块上存在数据参数相同或相关的多个代码功能,则建立所述多个代码功能的相关数据参数之间的关联关系,以便其中任一代码功能的数据参数发生变化时,相关联的代码功能中的数据参数相应改变。
在一种实施例中,所述在所述代码参数配置界面上设置所述需求信息对应的功能模块和代码参数模块的步骤之前,还包括:
根据所述功能模块的领域类别,将各功能模块划分到对应的领域类别集合中;
在各领域类别集合中,按照所述功能模块的覆盖范围对各功能模块进行展示优先级的划分,按照各功能模块的展示优先级展示于代码参数配置界面上。
在一种实施例中,所述在所述代码参数配置界面上设置所述需求信息对应的功能模块和代码参数模块的步骤之前,还包括:
调用所述功能模块的使用记录,统计各功能模块的使用频次;
根据所述使用频次的高低确定各功能模块的展示优先级;
按照所述展示优先级将所述功能模块展示于代码参数配置界面上。
在一种实施例中,所述根据所述代码处理参数的规则将所述底层代码生成目标代码段的步骤之后,还包括:
在配置文件中添加代码优化模块,通过所述代码优化模块利用循环函数处理所述目标代码段中的循环逻辑,以降低所述目标代码段的冗余程度。
进一步地,本申请实施例还提供了一种代码段的生成装置,包括:
展示代码参数配置界面模块,用于获取代码生成的需求信息,根据所述需求信息调用并展示代码参数配置界面;
设置模块,用于在所述代码参数配置界面上设置所述需求信息对应的功能模块和代码参数模块;
生成配置文件模块,用于接收用户在所述功能模块上选择的代码功能以及在所述代码参数模块上输入的代码处理参数,根据所述代码功能和所述代码处理参数生成配置文件;
生成目标代码段模块,用于当接收到代码生成指令时,读取所述配置文件中的代码功能,从数据库中调取与所述代码功能相关联的底层代码,并根据所述代码处理参数的规则将所述底层代码生成目标代码段。
进一步地,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机指令,当所述计算机指令在计算机上运行时,使得计算机可以执行上述任一技术方案所述的代码段的生成方法的步骤。
更进一步地,本申请实施例还提供了一种计算机设备,所述计算机设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任意一技术方案所述的代码段的生成方法的步骤。
与现有技术相比,本申请提供的方案至少具备如下优点:
本申请实施例提供的代码段的生成方法,通过将功能模块及代码参数模块展示于代码参数配置界面上,并在代码参数配置界面上进行功能模块及代码参数模块的设置,方便用户直观地选择并确定代码功能及代码处理参数,进而获得包含代码功能及代码处理参数的配置文件,配置文件是根据用户需求确定的,根据该配置文件生成的目标代码段能够满足用户需求,实现目标代码段的个性化定制,提高目标代码段生成的灵活性。
本申请实施例提供的代码段的生成方法,根据配置文件生成符合用户需求的目标代码段,由于代码功能的代码编写是统一的,生成的目标代码是具有一定的规范性,避免了不同开发人员的代码差异,有利于减少后续调试及维护过程中耗费的时间,提高代码开发效率;并且还可根据用户的选择针对性地生成代码段,体现了代码生成的灵活性和实用性。
本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请一个实施例提供的代码段的生成方法的实施环境图;
图2为本申请一个实施例提供的代码段的生成方法的流程图;
图3为本申请一个实施例提供的对功能模块展示优先级排序的流程图;
图4为本申请另一个实施例提供的对功能模块展示优先级排序的流程图;
图5为本申请一种实施例提供的代码段的生成装置的结构示意图;
图6为本申请一种实施例提供的计算机设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组合。
图1为一个实施例中提供的代码段的生成方法的实施环境图,在该实施环境中,包括用户终端、服务器端。
本实施例提供的代码段的生成方法可适用于服务器端,服务器端获取代码生成的需求信息,根据所述需求信息调用并展示代码参数配置界面;在所述代码参数配置界面上设置所述需求信息对应的功能模块和代码参数模块;接收用户在所述功能模块中选择的代码功能及在代码参数模块中输入的代码处理参数,根据所述代码功能和代码处理参数生成配置文件;当接收到代码生成指令时,读取所述配置文件中的代码功能,从数据库中调取与所述代码功能相关联的底层代码,并根据所述代码处理参数的规则将所述底层代码生成目标代码段。
需要说明的是,本申请文件中所涉及的后台可以是服务器端,用户终端可为智能手机、平板电脑、笔记本电脑、台式计算机等,服务器端可以由具有处理功能的计算机设备来实现,但并不局限于此。服务器端与用户终端可以通过蓝牙、USB(Universal SerialBus,通用串行总线)或者其他通讯连接方式进行网络连接,本申请在此不做限制。
在一个实施例中,图2为本申请实施例提供的代码段的生成方法的流程图,该代码段的生成方法可以应用于上述的服务器端,包括如下步骤:
步骤S210,获取代码生成的需求信息,根据所述需求信息调用并展示代码参数配置界面;
步骤S220,在所述代码参数配置界面上设置所述需求信息对应的功能模块和代码参数模块;
步骤S230,接收用户在所述功能模块上选择的代码功能以及在所述代码参数模块上输入的代码处理参数,根据所述代码功能和所述代码处理参数生成配置文件;
步骤S240,当接收到代码生成指令时,读取所述配置文件中的代码功能,从数据库中调取与所述代码功能相关联的底层代码,并根据所述代码处理参数的规则将所述底层代码生成目标代码段。
步骤S210的获取代码生成的需求信息,其中代码生成的需求信息可以是接收到的代码生成请求,接收到该代码生成请求,则表明用户有代码生成需求,调取并展示代码参数配置界面,该代码参数配置界面上展示有多个功能模块及代码参数模块,功能模块中包含多种代码功能,表征该模块能够实现何种功能,代码参数模块包括但不限于代码生成格式、代码生成语言等,代码生成格式如:生成表格、txt文档等格式,代码生成语言是目标代码段的编写语言,如:java语言、C语言、C++、PHP语言等。
步骤S220的在所述代码参数配置界面上设置所述需求信息对应的功能模块和代码参数模块,代码参数配置界面上可以展示多个功能模块,及代码参数模块,每个功能模块上可以有多个代码功能,选定一个功能模块后,再根据用户的选择确定该功能模块中的代码功能,如:一个功能模块是计算个人所得税,该功能模块上提供的多个代码功能可以是不同地区的个税计算。代码参数模块可以描述为代码生成规则,如:代码生成的格式、代码生成的语言等,代码参数模块中也可以设置多种代码处理参数,这些代码处理参数的输入可以通过选择预先设定的代码处理参数,也可以通过手动方式输入。
本申请实施例提供的将功能模块及代码参数模块展示于代码参数配置界面上,并在代码参数配置界面上进行功能模块及代码参数模块的选择,进而进行代码功能及代码处理参数的选择,有利于直观地确定用户的需求,获得包含代码功能及代码处理参数的配置文件,根据该配置文件生成的代码能够满足用户灵活的代码生成需求。
步骤S230的接收用户在所述功能模块上选择的代码功能以及在所述代码参数模块上输入的代码处理参数,根据所述代码功能和所述代码处理参数生成配置文件。
用户在代码参数配置界面上选择功能模块上的代码功能及代码参数模块上的代码处理参数,上述功能模块中包括多个代码功能,接收用户在功能模块中选择的代码功能以及代码参数模块中的代码参数模块,选择的代码功能能够限定生成的目标代码段能够实现的功能,选择的代码处理参数则能够限定目标代码段的展示形式,根据选定代码功能及代码处理参数生成目标代码段的配置文件。
目标代码段的配置文件生成后,接收到代码生成指令,读取所述配置文件中的代码功能,分别提取配置文件中的代码功能及代码处理参数,从数据库中中调取与所述代码功能相关联的底层代码,并根据所述代码处理参数的规则将所述底层代码生成目标代码段,具体地,调取与所述代码功能相关联的底层代码,由于用户选择的代码功能可能超过一种,因此根据代码处理参数的规则将底层代码生成目标代码段的过程中,会根据代码处理参数进行多段底层代码段之间的融合及处理,最终生成符合代码处理参数规则的目标代码段。
本申请提供的代码段的生成方案,在获得配置文件时调用并展示代码参数配置界面,用户可以根据不同自身需求选择功能模块,生成不同的代码段,由于配置文件中不仅包括功能模块,还包括目标代码段的语言、格式等规则,能够根据不同的用户需求定制个性化代码,提高代码生成的灵活性。同时,由于功能模块内部的代码编写是统一的,生成的目标代码是具有一定的规范性,避免了不同开发人员的代码差异,有利于减少后续调试及维护过程中耗费的时间,提高代码开发效率。
本申请提供的代码段的生成方法,利用代码参数配置界面供用户选择待生成的代码段的功能模块和代码参数模块,根据用户选择的功能模块生成不同的代码段,实现根据用户需求进行灵活地代码生成的目的,而且,用户能够在代码参数配置界面上进行功能模块和代码参数模块的选择,实现配置过程的可视化,配置过程更加直观,降低代码生成过程的操作难度。
本申请提供的代码段的生成方法,用户只参与了模块选择过程,并未进行底层代码的编写,因此,各功能模块内部的代码编写是统一的,即使最终生成的代码实现的功能不同,但各个功能模块内的底层代码的编写是一致的,不会因为用户的不同而有所差异,该种方式有利于降低代码的维护难度。
为了更清楚本申请提供的代码段的生成方案及其技术效果,接下来以多个实施例对其具体方案进行详细阐述。
在一种实施例中,步骤S240的从数据库中调取与所述代码功能相关联的底层代码的步骤之前,还包括:
创建所述代码功能与底层代码之间的关联,将所述关联存储于数据库中,并将所述代码功能对应的功能模块置于所述代码参数配置界面中。
本实施例提供的方案中,在调取与代码功能相关联的底层代码的步骤之前,创建代码功能与底层代码之间的关联,具体地,底层代码中存储有大量代码或代码段,这些代码可以以零散代码段的形式存在,也可以以组合代码段的形式存在。
示例性地,上述代码功能是实现个税计算,包括:数据抓取代码段、数据计算代码段、数据返回代码段等多个代码段,这些代码段可以是整段存储,即调用该完整的代码段即能实现个税计算,也可以以分段存储,如数据库中分别存储数据抓取代码段、数据计算代码段、数据返回代码段,在计算个税时,根据个税代码的配置文件调取各代码段,实现个税计算,各代码段分段存储的方案中,各代码段可以处于共享状态,可以被多个代码功能调用,有利于减少数据库中代码段的存储空间,本申请实施例优选将代码功能对应的多个代码段分段存储,并在数据库中设置有代码功能对应的配置文件,在调用待代码功能对应的底层代码时,通过该代码功能对应的配置文件调用各底层代码段,组装成该代码功能对应的完整代码段。
上述各实施例提供的方案能够根据用户选择的代码功能及代码处理参数生成配置文件,选择代码功能及代码处理参数是按照用户需求选择的,以便生成的目标代码能够充分满足用户需求,为了用户在选择代码功能及代码处理参数过程中更加便捷,本申请还提供了如下实施例,具体如下:
一种实施例中,步骤S220的在所述代码参数配置界面上设置所述需求信息对应的功能模块和代码参数模块的步骤之前,还可以通过如下方式进行功能模块展示优先级排序,其流程图如图3所示,包括如下子步骤:
S310,根据功能模块的领域类别,将各功能模块划分到对应的领域类别集合中;
S320,在各领域类别集合中,按照所述功能模块的覆盖范围对各功能模块进行展示优先级的划分,按照各功能模块的展示优先级展示于代码参数配置界面上。
数据库中存在大量功能模块时,如果没有展示规则,或者按照各功能模块的命名进行展示优先级的排序,不利于用户查找需要的功能模块。因此,本申请实施例提供一种方案,先将各功能模块按照所属类别进行分类,再由精到细,逐级对功能模块进行分类。
示例如下:按照各功能模块的所属类别,将功能模块划分为:计算类别、查询类别、识别类别等等,计算类别中包括:税务计算模块、公积金计算模块、违约金计算模块等,税务计算模块中又包括:个税计算子模块、增值税计算子模块、营业税计算子模块等,个税计算子模块中又可以包括各地方的个税计算代码等等。若用户需要计算北京市的个税计算代码,则需要对功能模块逐级进行选择,选择的次序为:计算类别—税务计算模块—个税计算子模块—北京市个税计算代码。
本申请实施例提供的功能模块的展示方式,按照功能模块的覆盖范围大小确定展示优先级,按照展示优先级不断靠近所需功能模块的位置,最终找到所需功能模块的位置,确定并选择该功能模块,实现功能模块的选择,本申请实施例提供的方案,通过所需功能模块的所属类别逐级展示,在数据库中存在同名的功能模块时,能够准确获得所需功能模块,提高获得准确功能模块的效率。
上一实施例中,各功能代码及代码参数模块的展示优先级是根据各功能模块的覆盖范围进行排序的结果,该种方式需要用户明确所需功能模块的覆盖范围大小以及所属领域,本申请实施例还提供了另一种功能模块和代码参数模块进行展示优先级的划分方式,利用大数据的优势,分析用户对各功能模块的使用频率,根据用户对各功能模块的使用频次建立功能模块的展示优先级,具体如下:
一种实施例中,步骤S220的在所述代码参数配置界面上设置所述需求信息对应的功能模块和代码参数模块的步骤之前,还可以通过如下方式进行功能模块展示优先级排序,其流程图如图4所示,包括如下子步骤:
S410,调用所述功能模块的使用记录,统计各功能模块的使用频次;
S420,根据所述使用频次的高低确定各功能模块的展示优先级;
S430,按照所述展示优先级将所述功能模块展示于代码参数配置界面上。
本实施例提供的方案中,步骤S410的调用所述功能模块的使用记录之前需要不断记录功能模块的使用历史记录,然后才能利用本申请实施例提供的方案进行智能排序。
本申请实施例提供的方案中,利用各功能模块的使用频次对各功能模块进行智能排序,将用户经常使用的功能模块优先展示,该方案适用于功能模块的使用变动不大的场景中,实际生产生活中,用户工作或科研的领域一般较为稳定,或者一段时间内变化不大,如公司科研领域为音响,则与音响相关的功能模块会被经常调用,因此,本申请实施例利用大数据的优势,获取用户经常调用的功能模块,并将使用频次最高的功能模块的展示优先级设为最高,有利于用户快速找到所需功能模块,提高功能模块的获取效率,进而有利于提高生成目标代码段的效率。
上述两个实施例均能提高生成配置文件的速率,为了便于最终生成的目标代码段实现用户需求,还需要对待处理数据进行预处理,以便目标代码段能够更方便地处理待处理数据,具体预处理过程参见以下实施例。
一种实施例中,步骤S230的根据所述代码功能和代码处理参数生成配置文件的步骤之后,还包括:
根据所述配置文件的代码处理参数确定数据结构和用于数据处理的SQL脚本,以便利用所述数据结构和所述SQL脚本对数据进行增删查改处理,所述数据结构用于对数据的存储、组织及操作过程中的数据格式进行限定。
具体地,根据配置文件中的代码处理参数确定存储、组织数据的方式以及对数据的操作规则。
其中,SQL是结构化查询语言,用于存储、操纵、检索存储在关系数据库中的数据,本申请实施例提供的方案,利用配置文件生成SQL脚本,实现对数据的增删查改等操作处理,利用SQL脚本对数据进行统一处理,避免处理过程杂乱。
后续代码生成过程中,利用代码处理参数对数据的存储、组织及操作过程中的数据格式进行限定,利用SQL脚本对数据进行增删查改等处理。
多个代码功能中的数据参数可能会有所关联,因此,本申请还提供了如下实施例保证待处理数据的处理准确性。
一种实施例中,若功能模块上存在数据参数相同或相关的多个代码功能,步骤S230的接收用户在所述功能模块上选择的代码功能以及在代码参数模块上输入的代码处理参数的步骤之后,还包括:
建立多个代码功能的相关数据参数之间的关联关系,以便其中任一代码功能的数据参数发生变化时,相关联的代码功能中的数据参数相应改变。
示例如下:数据库中存储有两个数据表格,第一表格是表征学校中所有班级及各班级的人数表格,第二表格是每个班级中包括学生姓名的表格,若第二表格中有增加或减少学生姓名的情况,第一表格中发生学生变动对应班级的人数也要相应发生改变,否则根据这两个数据表格进行的数据处理会出现错误,本示例中,第二表格中各班级的学生姓名的增删与第一表格中各班级人数之间具有关联关系,因此需要预先对两个表格中的数据参数进行关联,以便修改其中一个数据参数时,与该参数数据相关联的数据参数同步更改,有利于降低数据出错概率,降低代码维护难度。
上述示例中,采用两个代码功能的处理过程,本申请提供的方案还可以适用于多于两个代码功能的情况,处理过程类似,在此不再赘述。
进一步地,步骤S240的根据所述代码处理参数的规则将所述底层代码生成目标代码段的步骤之后,还包括:
在配置文件中添加代码优化模块,利用所述代码优化模块降低所述的目标代码段的代码冗余,所述代码优化模块能够利用循环函数处理循环逻辑。即:可以通过代码优化模块利用循环函数处理所述目标代码段中的循环逻辑,以降低所述目标代码段的冗余程度。
由于目标代码段中可能包括多个代码功能,各代码功能对应的代码段的编写相同,可能会出现大量冗余等缺点,本申请在生成目标代码段之后,对目标代码段进行优化,去除代码冗余等不足,增大目标代码段的可读性。
代码优化模块可以是利用循环函数处理重复逻辑,如:while,for等,或者还可以采用类、多态等方式提高代码的复用率,降低代码冗余,而且,消除冗余代码,有利于获得更加合理的代码结构。
本实施例中,在利用代码处理参数的规则将底层代码生成目标代码段之后,利用代码优化模块对生成的目标代码进行优化,以去除代码冗余等不足,使目标代码段更加简洁。
以上为本申请提供的代码段的生成方法实施例,针对于该方法,下面阐述与其对应的代码段的生成装置的实施例。
本申请实施例还提供了一种代码段的生成装置,其结构示意图如图5所示,包括:展示代码参数配置界面模块510、设置模块520、生成配置文件模块530、生成目标代码段模块540,具体如下:
展示代码参数配置界面模块510,用于获取代码生成的需求信息,根据所述需求信息调用并展示代码参数配置界面;
设置模块520,用于在所述代码参数配置界面上设置所述需求信息对应的功能模块和代码参数模块;
生成配置文件模块530,用于接收用户在所述功能模块上选择的代码功能以及在所述代码参数模块上输入的代码处理参数,根据所述代码功能和所述代码处理参数生成配置文件;
生成目标代码段模块540,用于当接收到代码生成指令时,读取所述配置文件中的代码功能,从数据库中调取与所述代码功能相关联的底层代码,并根据所述代码处理参数的规则将所述底层代码生成目标代码段。
关于上述实施例中的代码段的生成装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
进一步地,本申请实施例还提供一种计算机可读存储介质,其上存储有计算机指令,该计算机指令被处理器执行时实现上述任意一项所述的代码段的生成方法的步骤。其中,所述存储介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM(Read-Only Memory,只读存储器)、RAM(Random AcceSS Memory,随即存储器)、EPROM(EraSable Programmable Read-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically EraSable Programmable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,存储介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。可以是只读存储器,磁盘或光盘等。
更进一步地,本申请实施例还提供一种计算机设备,所述计算机设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任意一项所述的代码段的生成方法的步骤。
图6是根据一示例性实施例示出的一种用于计算机设备600的框图。例如,计算机设备600可以被提供为一服务器。参照图6,计算机设备600包括处理组件622,其进一步包括一个或多个处理器,以及由存储器632所代表的存储器资源,用于存储可由处理组件622的执行的指令,例如应用程序。存储器632中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件622被配置为执行指令,以执行上述代码段的生成方法的步骤。
计算机设备600还可以包括一个电源组件626被配置为执行计算机设备600的电源管理,一个有线或无线网络接口650被配置为将计算机设备600连接到网络,和一个输入输出(I/O)接口658。计算机设备600可以操作基于存储在存储器632的操作系统,例如WindowsServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
应该理解的是,在本申请各实施例中的各功能单元可集成在一个处理模块中,也可以各个单元单独物理存在,也可以两个或两个以上单元集成于一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种代码段的生成方法,其特征在于,包括:
获取代码生成的需求信息,根据所述需求信息调用并展示代码参数配置界面;
在所述代码参数配置界面上设置所述需求信息对应的功能模块和代码参数模块;
接收用户在所述功能模块上选择的代码功能以及在所述代码参数模块上输入的代码处理参数,根据所述代码功能和所述代码处理参数生成配置文件;
当接收到代码生成指令时,读取所述配置文件中的代码功能,从数据库中调取与所述代码功能相关联的底层代码,并根据所述代码处理参数的规则将所述底层代码生成目标代码段。
2.根据权利要求1所述的代码段的生成方法,其特征在于,所述从数据库中调取与所述代码功能相关联的底层代码的步骤之前,还包括:
创建所述代码功能与底层代码之间的关联,将所述关联存储于数据库中,并将所述代码功能对应的功能模块置于所述代码参数配置界面中。
3.根据权利要求1所述的代码段的生成方法,其特征在于,所述根据所述代码功能和所述代码处理参数生成配置文件的步骤之后,还包括:
根据所述配置文件的代码处理参数确定数据结构和用于数据处理的SQL脚本,以便利用所述数据结构和所述SQL脚本对数据进行增删查改处理,所述数据结构用于对数据的存储、组织及操作过程中的数据格式进行限定。
4.根据权利要求1所述的代码段的生成方法,其特征在于,所述接收用户在所述功能模块上选择的代码功能以及在所述代码参数模块上输入的代码处理参数的步骤之后,还包括:
若所述功能模块上存在数据参数相同或相关的多个代码功能,则建立所述多个代码功能的相关数据参数之间的关联关系,以便其中任一代码功能的数据参数发生变化时,相关联的代码功能中的数据参数相应改变。
5.根据权利要求1所述的代码段的生成方法,其特征在于,所述在所述代码参数配置界面上设置所述需求信息对应的功能模块和代码参数模块的步骤之前,还包括:
根据所述功能模块的领域类别,将各功能模块划分到对应的领域类别集合中;
在各领域类别集合中,按照所述功能模块的覆盖范围对各功能模块进行展示优先级的划分,按照各功能模块的展示优先级展示于代码参数配置界面上。
6.根据权利要求1所述的代码段的生成方法,其特征在于,所述在所述代码参数配置界面上设置所述需求信息对应的功能模块和代码参数模块的步骤之前,还包括:
调用所述功能模块的使用记录,统计各功能模块的使用频次;
根据所述使用频次的高低确定各功能模块的展示优先级;
按照所述展示优先级将所述功能模块展示于代码参数配置界面上。
7.根据权利要求1所述的代码段的生成方法,其特征在于,所述根据所述代码处理参数的规则将所述底层代码生成目标代码段的步骤之后,还包括:
在配置文件中添加代码优化模块,通过所述代码优化模块利用循环函数处理所述目标代码段中的循环逻辑,以降低所述目标代码段的冗余程度。
8.一种代码段的生成装置,其特征在于,包括:
展示代码参数配置界面模块,用于获取代码生成的需求信息,根据所述需求信息调用并展示代码参数配置界面;
设置模块,用于在所述代码参数配置界面上设置所述需求信息对应的功能模块和代码参数模块;
生成配置文件模块,用于接收用户在所述功能模块上选择的代码功能以及在所述代码参数模块上输入的代码处理参数,根据所述代码功能和所述代码处理参数生成配置文件;
生成目标代码段模块,用于当接收到代码生成指令时,读取所述配置文件中的代码功能,从数据库中调取与所述代码功能相关联的底层代码,并根据所述代码处理参数的规则将所述底层代码生成目标代码段。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机指令,当其在计算机上运行时,使得计算机可以执行上述权利要求1至7中任一项所述的代码段的生成方法的步骤。
10.一种计算机设备,其特征在于,所述计算机设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1至7中任意一项所述的代码段的生成方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910562296.9A CN110442329A (zh) | 2019-06-26 | 2019-06-26 | 代码段的生成方法、装置、存储介质及计算机设备 |
PCT/CN2019/117603 WO2020258656A1 (zh) | 2019-06-26 | 2019-11-12 | 代码段的生成方法、装置、存储介质及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910562296.9A CN110442329A (zh) | 2019-06-26 | 2019-06-26 | 代码段的生成方法、装置、存储介质及计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110442329A true CN110442329A (zh) | 2019-11-12 |
Family
ID=68428794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910562296.9A Pending CN110442329A (zh) | 2019-06-26 | 2019-06-26 | 代码段的生成方法、装置、存储介质及计算机设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110442329A (zh) |
WO (1) | WO2020258656A1 (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110955418A (zh) * | 2019-12-13 | 2020-04-03 | 中国南方电网有限责任公司 | 代码生成方法、装置、计算机设备和存储介质 |
CN111142861A (zh) * | 2019-12-17 | 2020-05-12 | 西安电子科技大学 | 结构化综控系统集成方法及装置 |
CN111459469A (zh) * | 2020-04-03 | 2020-07-28 | 网易(杭州)网络有限公司 | 项目代码初始化方法、装置及设备 |
CN111722839A (zh) * | 2020-06-24 | 2020-09-29 | 北京航天数据股份有限公司 | 一种代码生成方法、装置、电子设备及存储介质 |
CN111930349A (zh) * | 2020-08-04 | 2020-11-13 | 中国建设银行股份有限公司 | 一种程序包生成方法、装置、电子设备及存储介质 |
CN112199086A (zh) * | 2020-09-18 | 2021-01-08 | 北京达佳互联信息技术有限公司 | 自动编程控制系统、方法、装置、电子设备及存储介质 |
CN112346726A (zh) * | 2020-03-16 | 2021-02-09 | 成都华微电子科技有限公司 | 一种基于表单信息自动化生成设计代码的方法 |
CN112860248A (zh) * | 2019-11-27 | 2021-05-28 | 中盈优创资讯科技有限公司 | 源代码生成方法及装置 |
CN112965697A (zh) * | 2021-03-25 | 2021-06-15 | 北京奇艺世纪科技有限公司 | 一种代码文件的生成方法、装置及电子设备 |
CN113268229A (zh) * | 2021-06-08 | 2021-08-17 | 中国联合网络通信集团有限公司 | 一种代码生成方法和代码生成装置 |
CN113296779A (zh) * | 2020-08-20 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 代码信息处理系统、方法、装置以及电子设备 |
CN114115855A (zh) * | 2021-03-26 | 2022-03-01 | 北京京东拓先科技有限公司 | 代码复用方法及装置、计算机可读存储介质、电子设备 |
CN114138254A (zh) * | 2021-11-30 | 2022-03-04 | 北京宇信科技集团股份有限公司 | 一种代码自动生成方法、介质、设备和系统 |
CN114895895A (zh) * | 2022-04-06 | 2022-08-12 | 一汽解放汽车有限公司 | 模型开发方法、装置、计算机设备和存储介质 |
CN115562679A (zh) * | 2022-12-05 | 2023-01-03 | 广州市保伦电子有限公司 | 一种基于Java语言的自动生成代码的方法及服务器 |
WO2023173631A1 (zh) * | 2022-03-15 | 2023-09-21 | 上海商汤智能科技有限公司 | 编程方法和装置、设备、存储介质及计算机程序产品 |
CN117331559A (zh) * | 2023-11-06 | 2024-01-02 | 久方智能(广东)有限公司 | 一种前端无代码生成应用界面的方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102053855A (zh) * | 2010-12-13 | 2011-05-11 | 浪潮(北京)电子信息产业有限公司 | 一种软件的生成系统及方法 |
CN103135989A (zh) * | 2013-03-11 | 2013-06-05 | 北京经纬恒润科技有限公司 | 一种回调函数代码生成方法及装置 |
CN105912334A (zh) * | 2016-04-08 | 2016-08-31 | 浙江大学 | 一种autosar软件组件的内部行为对象代码生成方法 |
CN106528165A (zh) * | 2016-11-11 | 2017-03-22 | 深圳中兴网信科技有限公司 | 代码生成方法及代码生成系统 |
CN109710236A (zh) * | 2018-12-30 | 2019-05-03 | 北京字节跳动网络技术有限公司 | 基于共享服务的业务开发和实现方法、装置、平台及介质 |
CN109725897A (zh) * | 2018-12-03 | 2019-05-07 | 深圳市多元世纪信息技术股份有限公司 | 软件定制方法、装置和系统、终端 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7187380B2 (en) * | 2003-10-30 | 2007-03-06 | Hewlett-Packard Development Company, L.P. | Telecommunications graphical service program |
CN109240670A (zh) * | 2018-11-21 | 2019-01-18 | 北京锐安科技有限公司 | 模块化的软件开发方法、系统、设备及介质 |
CN109871289B (zh) * | 2019-02-01 | 2020-03-10 | 北京顺丰同城科技有限公司 | 一种远程过程调用rpc服务生成方法及装置 |
-
2019
- 2019-06-26 CN CN201910562296.9A patent/CN110442329A/zh active Pending
- 2019-11-12 WO PCT/CN2019/117603 patent/WO2020258656A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102053855A (zh) * | 2010-12-13 | 2011-05-11 | 浪潮(北京)电子信息产业有限公司 | 一种软件的生成系统及方法 |
CN103135989A (zh) * | 2013-03-11 | 2013-06-05 | 北京经纬恒润科技有限公司 | 一种回调函数代码生成方法及装置 |
CN105912334A (zh) * | 2016-04-08 | 2016-08-31 | 浙江大学 | 一种autosar软件组件的内部行为对象代码生成方法 |
CN106528165A (zh) * | 2016-11-11 | 2017-03-22 | 深圳中兴网信科技有限公司 | 代码生成方法及代码生成系统 |
CN109725897A (zh) * | 2018-12-03 | 2019-05-07 | 深圳市多元世纪信息技术股份有限公司 | 软件定制方法、装置和系统、终端 |
CN109710236A (zh) * | 2018-12-30 | 2019-05-03 | 北京字节跳动网络技术有限公司 | 基于共享服务的业务开发和实现方法、装置、平台及介质 |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112860248A (zh) * | 2019-11-27 | 2021-05-28 | 中盈优创资讯科技有限公司 | 源代码生成方法及装置 |
CN112860248B (zh) * | 2019-11-27 | 2023-12-05 | 中盈优创资讯科技有限公司 | 源代码生成方法及装置 |
CN110955418A (zh) * | 2019-12-13 | 2020-04-03 | 中国南方电网有限责任公司 | 代码生成方法、装置、计算机设备和存储介质 |
CN111142861A (zh) * | 2019-12-17 | 2020-05-12 | 西安电子科技大学 | 结构化综控系统集成方法及装置 |
CN112346726A (zh) * | 2020-03-16 | 2021-02-09 | 成都华微电子科技有限公司 | 一种基于表单信息自动化生成设计代码的方法 |
CN112346726B (zh) * | 2020-03-16 | 2023-12-12 | 成都华微电子科技股份有限公司 | 一种基于表单信息自动化生成设计代码的方法 |
CN111459469B (zh) * | 2020-04-03 | 2024-02-06 | 网易(杭州)网络有限公司 | 项目代码初始化方法、装置及设备 |
CN111459469A (zh) * | 2020-04-03 | 2020-07-28 | 网易(杭州)网络有限公司 | 项目代码初始化方法、装置及设备 |
CN111722839A (zh) * | 2020-06-24 | 2020-09-29 | 北京航天数据股份有限公司 | 一种代码生成方法、装置、电子设备及存储介质 |
CN111722839B (zh) * | 2020-06-24 | 2023-03-03 | 北京航天数据股份有限公司 | 一种代码生成方法、装置、电子设备及存储介质 |
CN111930349A (zh) * | 2020-08-04 | 2020-11-13 | 中国建设银行股份有限公司 | 一种程序包生成方法、装置、电子设备及存储介质 |
CN111930349B (zh) * | 2020-08-04 | 2023-06-06 | 中国建设银行股份有限公司 | 一种程序包生成方法、装置、电子设备及存储介质 |
CN113296779A (zh) * | 2020-08-20 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 代码信息处理系统、方法、装置以及电子设备 |
CN112199086B (zh) * | 2020-09-18 | 2024-07-09 | 北京达佳互联信息技术有限公司 | 自动编程控制系统、方法、装置、电子设备及存储介质 |
CN112199086A (zh) * | 2020-09-18 | 2021-01-08 | 北京达佳互联信息技术有限公司 | 自动编程控制系统、方法、装置、电子设备及存储介质 |
CN112965697A (zh) * | 2021-03-25 | 2021-06-15 | 北京奇艺世纪科技有限公司 | 一种代码文件的生成方法、装置及电子设备 |
CN112965697B (zh) * | 2021-03-25 | 2023-07-25 | 北京奇艺世纪科技有限公司 | 一种代码文件的生成方法、装置及电子设备 |
CN114115855A (zh) * | 2021-03-26 | 2022-03-01 | 北京京东拓先科技有限公司 | 代码复用方法及装置、计算机可读存储介质、电子设备 |
CN113268229A (zh) * | 2021-06-08 | 2021-08-17 | 中国联合网络通信集团有限公司 | 一种代码生成方法和代码生成装置 |
CN113268229B (zh) * | 2021-06-08 | 2023-06-27 | 中国联合网络通信集团有限公司 | 一种代码生成方法和代码生成装置 |
CN114138254B (zh) * | 2021-11-30 | 2022-06-07 | 北京宇信科技集团股份有限公司 | 一种代码自动生成方法、介质、设备和系统 |
CN114138254A (zh) * | 2021-11-30 | 2022-03-04 | 北京宇信科技集团股份有限公司 | 一种代码自动生成方法、介质、设备和系统 |
WO2023173631A1 (zh) * | 2022-03-15 | 2023-09-21 | 上海商汤智能科技有限公司 | 编程方法和装置、设备、存储介质及计算机程序产品 |
CN114895895A (zh) * | 2022-04-06 | 2022-08-12 | 一汽解放汽车有限公司 | 模型开发方法、装置、计算机设备和存储介质 |
CN115562679B (zh) * | 2022-12-05 | 2023-06-30 | 广东保伦电子股份有限公司 | 一种基于Java语言的自动生成代码的方法及服务器 |
CN115562679A (zh) * | 2022-12-05 | 2023-01-03 | 广州市保伦电子有限公司 | 一种基于Java语言的自动生成代码的方法及服务器 |
CN117331559A (zh) * | 2023-11-06 | 2024-01-02 | 久方智能(广东)有限公司 | 一种前端无代码生成应用界面的方法 |
CN117331559B (zh) * | 2023-11-06 | 2024-05-03 | 久方智能(广东)有限公司 | 一种前端无代码生成应用界面的方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2020258656A1 (zh) | 2020-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110442329A (zh) | 代码段的生成方法、装置、存储介质及计算机设备 | |
CN113297320B (zh) | 分布式数据库系统及数据处理方法 | |
CN109144997A (zh) | 数据关联方法、装置及存储介质 | |
CN113282795B (zh) | 数据结构图生成及更新方法、装置、电子设备及存储介质 | |
CN105787058B (zh) | 一种用户标签系统及基于用户标签系统的数据推送系统 | |
CN112612462B (zh) | 话术配置调整方法、装置、电子设备及存储介质 | |
CN111290813B (zh) | 一种软件界面字段数据标准化的方法、装置、设备和介质 | |
CN112612523A (zh) | 一种嵌入式设备驱动系统及方法 | |
CN103235811A (zh) | 一种数据存储方法及装置 | |
CN108829651A (zh) | 一种公文处理的方法、装置、终端设备及存储介质 | |
CN115408546A (zh) | 一种时序数据管理方法、装置、设备及存储介质 | |
CN102932416A (zh) | 一种信息流任务的中间数据存储方法、处理方法及装置 | |
US20150007126A1 (en) | Generating an Improved Development Infrastructure | |
CN103559675A (zh) | 病历录入装置和病历录入方法 | |
CN112286879A (zh) | 基于元数据的数据资产构建方法及装置 | |
CN110389944B (zh) | 一种基于模型的元数据管理系统及方法 | |
CN107256167A (zh) | 应用于应用系统迁移的升级控制方法及升级控制设备 | |
CN112199443A (zh) | 数据同步方法、装置、计算机设备和存储介质 | |
CN113138996A (zh) | 语句生成方法和装置 | |
CN115576843A (zh) | 软件质量管理相关数据可视化展示方法及装置 | |
CN113779231B (zh) | 基于知识图谱的大数据可视化分析方法、装置及设备 | |
CN114020506A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN109992630B (zh) | 数据模型匹配方法和装置 | |
CN115455010B (zh) | 一种基于milvus数据库的数据处理方法、电子设备及存储介质 | |
CN101710278B (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 |