CN109656543B - 一种基于文件关键字替换的自动代码生成方法 - Google Patents
一种基于文件关键字替换的自动代码生成方法 Download PDFInfo
- Publication number
- CN109656543B CN109656543B CN201811572075.1A CN201811572075A CN109656543B CN 109656543 B CN109656543 B CN 109656543B CN 201811572075 A CN201811572075 A CN 201811572075A CN 109656543 B CN109656543 B CN 109656543B
- Authority
- CN
- China
- Prior art keywords
- code
- replacement
- file
- code generation
- keyword
- 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
Images
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
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
本发明提供了一种基于文件关键字替换的自动代码生成方法,其可以匹配任意自动代码生成系统,用户只需根据所适用的自动代码生成系统编写可识别的代码文件和替换文件就可以做成任意自动代码生成器,其替换文件编写格式简单、易懂易操作。其包括如下三个步骤:1、用户发送自动代码生成指令;2、自动代码生成系统收到代码生成指令后,开始读取代码文件,经过一系列查找、解析、替换操作后,生成代码;3、自动代码生成系统判断代码文件是否读取完毕,如果未读取完毕则继续执行步骤2,如果读取完毕,则结束,输出的代码即为用户需要的代码。
Description
技术领域
本发明涉及自动代码生成的技术领域,具体为一种基于文件关键字替换的自动代码生成方法。
背景技术
现有的代码在进行编写时,均需要专业人员进行处理,其代码的处理费时费力,其代码开发的效率低、开发周期长;且现有的代码生成器的局限性大,导致其扩展性差。
发明内容
针对上述问题,本发明提供了一种基于文件关键字替换的自动代码生成方法,其可以匹配任意自动代码生成系统,用户只需根据所适用的自动代码生成系统编写可识别的代码文件和替换文件就可以做成任意自动代码生成器,其替换文件编写格式简单、易懂易操作。
一种基于文件关键字替换的自动代码生成方法,其特征在于,其包括如下三个步骤:
1、用户发送自动代码生成指令;
2、自动代码生成系统收到代码生成指令后,开始读取代码文件,经过一
系列查找、解析、替换操作后,生成代码;具体方法如下,
a、自动代码生成系统获取到代码文件的关键字后,转入步骤b,如果读取内容不是关键字,将读取内容作为输出文本,转入步骤d;
b、自动代码生成系统开始查找替换文件的关键字,如果有符合的关键字,转入步骤c;如果没有符合的关键字,则认为是关键字误触发,将读取内容作为输出文本,转入步骤d;
c、解析对应的替换操作并实施,生成替换内容,并将替换内容作为输出文本;
d、将文本输出为代码;
3、自动代码生成系统判断代码文件是否读取完毕,如果未读取完毕则继续执行步骤2,如果读取完毕,则结束,输出的代码即为用户需要的代码。
其进一步特征在于:
所述步骤2中,自动代码生成系统涉及到代码文件、替换文件和代码三个文件,所述代码文件和替换文件是输入文件,所述代码是输出文件,所述代码文件和替换文件的类型按使用的自动代码生成系统能识别的编写;
所述步骤2中,所述代码文件由具体代码进行分析、归纳而总结出的一套代码模板,其包括固定代码和关键字两部分组成;系统读取到代码文件的固定代码部分,将直接输出为代码;而读取到代码文件的关键字部分,会继续通过读取替换文件,然后进行一系列的操作后生成用户需要的代码;
所述步骤2中,所述替换文件由关键字和替换操作步骤组成;所述关键字是系统搜索替换内容的关键,找到正确的关键字,才能进行操作和替换,如果有符合的关键字则获取对应的替换操作,实施替换操作后,将生成的替换内容输出为代码;每一个关键字都对应一系列的操作步骤,所述操作步骤决定了关键字会被替换成什么样的内容,如果没有符合的关键字,则认为是关键字误触发,直接输出读取内容为代码;
所述步骤2中,所述替换操作由操作开始标识符、操作内容和操作结束标识符组成;所述操作内容在操作开始标识符与操作结束标识符之间,包括操作类型与操作参数;操作类型包括但不限于:获取上位机某个控件的值、设置上位机某个控件的值、进行某种计算、输出一段文本、比较两个值的大小,系统支持的任意操作都实现;所述操作参数就是操作类型所需要的所有参数。
所述操作参数在获取一个控件的值时,需要该控件的ID、值的类型以及输出结果存储位置,所述替换操作组合应用,实现用户的任意需求。
采用本发明后,其可以匹配任意自动代码生成系统,用户只需根据所适用的自动代码生成系统编写可识别的代码文件和替换文件就可以做成任意自动代码生成器,其替换文件编写格式简单、易懂易操作,其有效提升了代码生成的灵活性,提高了代码开发的效率、缩短开发周期,其解决现有代码生成器局限性大、扩展性差的问题,有效避免后端开发中存在代码冗余现象,其适用人群更加广泛、不需要较强的专业知识即可操作使用。
附图说明
图1为本发明的自动代码生成的实施例框图;
图2为本发明的自动代码生成流程图;
图3为本发明的替换文件格式示意图。
具体实施方式
一种基于文件关键字替换的自动代码生成方法,见图1-图3,其包括如下三个步骤:
1、用户发送自动代码生成指令;
2、自动代码生成系统收到代码生成指令后,开始读取代码文件,经过一系列查找、解析、替换操作后,生成代码;具体方法如下,
a、自动代码生成系统获取到代码文件的关键字后,转入步骤b,如果读取内容不是关键字,将读取内容作为输出文本,转入步骤d;
b、自动代码生成系统开始查找替换文件的关键字,如果有符合的关键字,转入步骤c;如果没有符合的关键字,则认为是关键字误触发,将读取内容作为输出文本,转入步骤d;
c、解析对应的替换操作并实施,生成替换内容,并将替换内容作为输出文本;
d、将文本输出为代码;
3、自动代码生成系统判断代码文件是否读取完毕,如果未读取完毕则继续执行步骤2,如果读取完毕,则结束,输出的代码即为用户需要的代码。
步骤2中,自动代码生成系统涉及到代码文件、替换文件和代码三个文件,代码文件和替换文件是输入文件,代码是输出文件,代码文件和替换文件的类型按使用的自动代码生成系统能识别的编写;
步骤2中,代码文件由具体代码进行分析、归纳而总结出的一套代码模板,其包括固定代码和关键字两部分组成;系统读取到代码文件的固定代码部分,将直接输出为代码;而读取到代码文件的关键字部分,会继续通过读取替换文件,然后进行一系列的操作后生成用户需要的代码;
步骤2中,替换文件由关键字和替换操作步骤组成、具体的替换文件编写格式见图3;关键字是系统搜索替换内容的关键,找到正确的关键字,才能进行操作和替换,如果有符合的关键字则获取对应的替换操作,实施替换操作后,将生成的替换内容输出为代码;每一个关键字都对应一系列的操作步骤,操作步骤决定了关键字会被替换成什么样的内容,如果没有符合的关键字,则认为是关键字误触发,直接输出读取内容为代码;
步骤2中,替换操作由操作开始标识符、操作内容和操作结束标识符组成;操作内容在操作开始标识符与操作结束标识符之间,包括操作类型与操作参数;操作类型包括但不限于:获取上位机某个控件的值、设置上位机某个控件的值、进行某种计算、输出一段文本、比较两个值的大小,系统支持的任意操作都实现;操作参数就是操作类型所需要的所有参数;操作参数在获取一个控件的值时,需要该控件的ID、值的类型以及输出结果存储位置,替换操作组合应用,实现用户的任意需求。
其可以匹配任意自动代码生成系统,用户只需根据所适用的自动代码生成系统编写可识别的代码文件和替换文件就可以做成任意自动代码生成器,其替换文件编写格式简单、易懂易操作,其有效提升了代码生成的灵活性,提高了代码开发的效率、缩短开发周期,其解决现有代码生成器局限性大、扩展性差的问题,有效避免后端开发中存在代码冗余现象,其适用人群更加广泛、不需要较强的专业知识即可操作使用。
以上对本发明的具体实施例进行了详细说明,但内容仅为本发明创造的较佳实施例,不能被认为用于限定本发明创造的实施范围。凡依本发明创造申请范围所作的均等变化与改进等,均应仍归属于本专利涵盖范围之内。
Claims (2)
1.一种基于文件关键字替换的自动代码生成方法,其特征在于,其包括如下三个步骤:
1) 用户发送自动代码生成指令;
2) 自动代码生成系统收到代码生成指令后,开始读取代码文件,经过一系列查找、解析、替换操作后,生成代码;具体方法如下,
a、自动代码生成系统获取到代码文件的关键字后,转入步骤b,如果读取内容不是关键字,将读取内容作为输出文本,转入步骤d;
b、自动代码生成系统开始查找替换文件的关键字,如果有符合的关键字,转入步骤c;如果没有符合的关键字,则认为是关键字误触发,将读取内容作为输出文本,转入步骤d;
c、解析对应的替换操作并实施,生成替换内容,并将替换内容作为输出文本;
d、将文本输出为代码;
3) 自动代码生成系统判断代码文件是否读取完毕,如果未读取完毕则继续执行步骤2,如果读取完毕,则结束,输出的代码即为用户需要的代码;
所述步骤2中,自动代码生成系统涉及到代码文件、替换文件和代码三个文件,所述代码文件和替换文件是输入文件,所述代码是输出文件,所述代码文件和替换文件的类型按使用的自动代码生成系统能识别的编写;
所述步骤2中,所述代码文件由具体代码进行分析、归纳而总结出的一套代码模板,其包括固定代码和关键字两部分组成;系统读取到代码文件的固定代码部分,将直接输出为代码;而读取到代码文件的关键字部分,会继续通过读取替换文件,然后进行一系列的操作后生成用户需要的代码;
所述步骤2中,所述替换文件由关键字和替换操作步骤组成;找到正确的关键字,才能进行操作和替换,如果有符合的关键字则获取对应的替换操作,实施替换操作后,将生成的替换内容输出为代码;每一个关键字都对应一系列的操作步骤,所述操作步骤决定了关键字会被替换成什么样的内容;
所述步骤2中,所述替换操作由操作开始标识符、操作内容和操作结束标识符组成;所述操作内容在操作开始标识符与操作结束标识符之间,包括操作类型与操作参数;操作类型包括获取上位机某个控件的值、设置上位机某个控件的值、进行某种计算、输出一段文本、比较两个值的大小;所述操作参数就是操作类型所需要的所有参数。
2.如权利要求1所述的一种基于文件关键字替换的自动代码生成方法,其特征在于:所述操作参数在获取一个控件的值时,需要该控件的ID、值的类型以及输出结果存储位置,所述替换操作组合应用,实现用户的任意需求。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811572075.1A CN109656543B (zh) | 2018-12-21 | 2018-12-21 | 一种基于文件关键字替换的自动代码生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811572075.1A CN109656543B (zh) | 2018-12-21 | 2018-12-21 | 一种基于文件关键字替换的自动代码生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109656543A CN109656543A (zh) | 2019-04-19 |
CN109656543B true CN109656543B (zh) | 2022-03-29 |
Family
ID=66116184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811572075.1A Active CN109656543B (zh) | 2018-12-21 | 2018-12-21 | 一种基于文件关键字替换的自动代码生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109656543B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115438524A (zh) * | 2022-11-09 | 2022-12-06 | 北京蓝天航空科技股份有限公司 | 代码生成方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567193A (zh) * | 2010-12-09 | 2012-07-11 | 北京新媒传信科技有限公司 | 测试用例转化为自动化测试脚本的方法及系统 |
CN103678961A (zh) * | 2013-11-07 | 2014-03-26 | 北京深思数盾科技有限公司 | 代码动态生成的方法 |
CN105138364A (zh) * | 2015-08-21 | 2015-12-09 | 广东欧珀移动通信有限公司 | 一种终端系统升级的方法及装置 |
CN106843822A (zh) * | 2015-12-07 | 2017-06-13 | 阿里巴巴集团控股有限公司 | 一种执行代码生成方法及设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3635538A4 (en) * | 2017-06-05 | 2021-03-10 | Umajin Inc. | PROCEDURES AND SYSTEMS FOR AN APPLICATION SYSTEM |
-
2018
- 2018-12-21 CN CN201811572075.1A patent/CN109656543B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567193A (zh) * | 2010-12-09 | 2012-07-11 | 北京新媒传信科技有限公司 | 测试用例转化为自动化测试脚本的方法及系统 |
CN103678961A (zh) * | 2013-11-07 | 2014-03-26 | 北京深思数盾科技有限公司 | 代码动态生成的方法 |
CN105138364A (zh) * | 2015-08-21 | 2015-12-09 | 广东欧珀移动通信有限公司 | 一种终端系统升级的方法及装置 |
CN106843822A (zh) * | 2015-12-07 | 2017-06-13 | 阿里巴巴集团控股有限公司 | 一种执行代码生成方法及设备 |
Non-Patent Citations (1)
Title |
---|
网格计算中GBuilder的基于模板的代码生成技术研究与实现;穆鸿等;《计算机工程与应用》;20051231;第9-10页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109656543A (zh) | 2019-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107220235B (zh) | 基于人工智能的语音识别纠错方法、装置及存储介质 | |
US8051410B2 (en) | Apparatus for migration and conversion of software code from any source platform to any target platform | |
JP5370159B2 (ja) | 情報抽出装置及び情報抽出システム | |
CN101071378A (zh) | 源代码生成方法、设备和程序 | |
CN110704547B (zh) | 基于神经网络的关系抽取数据生成方法、模型及训练方法 | |
CN104731588A (zh) | 页面布局文件生成方法和页面布局文件生成装置 | |
JP2016157407A (ja) | テキスト分析及び応答システムのための語彙意味パターンの事前構築方法 | |
CN104462041A (zh) | 一种实现对热点事件从开始到结束实现完整检测的方法 | |
CN110968245A (zh) | 一种透过语音控制office办公软件的操作方法 | |
CN109656543B (zh) | 一种基于文件关键字替换的自动代码生成方法 | |
JP2015028763A (ja) | 言語変換装置、言語変換方法、及び言語変換プログラム | |
JP6805720B2 (ja) | データ検索プログラム、データ検索装置およびデータ検索方法 | |
US20200387815A1 (en) | Building training data and similarity relations for semantic space | |
CN110968307A (zh) | 一种基于智能生成基础代码的微服务构建方法及装置 | |
CN111338697B (zh) | 一种利用hid键盘进行一键设置的装置及方法 | |
CN104090748B (zh) | 基于Makefile的源码精简器进行精简源码的方法 | |
JP2004348552A (ja) | 音声文書検索装置および方法およびプログラム | |
JP5853531B2 (ja) | 情報処理装置及び情報処理プログラム | |
CN114911751A (zh) | 选煤厂管理平台的搭建方法、装置、设备及可读存储介质 | |
KR102066022B1 (ko) | 실행 코드 상의 함수 시그니처 생성 장치 및 방법 | |
Bai et al. | Automatic generation of code comments based on comment reuse and program parsing | |
CN112416431B (zh) | 一种基于编码序列表示的源代码片段成对比较方法 | |
JP2014211729A (ja) | 計算機、プログラム及びデータ生成方法 | |
JP2015032239A (ja) | 情報処理装置及び情報処理プログラム | |
US11893048B1 (en) | Automated indexing and extraction of multiple information fields in digital records |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |