本发明涉及编程系统,具体涉及一种基于ai的前端低代码自动化编程方法及系统。
背景技术:
1、随着互联网技术的飞速发展,企业信息化和数字化要求程度也越来越高,数字化往往伴随个性化、定制化和多样化需求,企业必须做出敏捷响应,以适应日益复杂的客户需求,这就迫切需要提高开发者的生产力和代码质量。
2、基于此,本发明提出一种基于ai的前端低代码自动化编程方法及系统,通过自动化和智能化代码编程、并在编程过程中自动进行代码审查,有效提高代码编程效率和提高代码质量。
技术实现思路
1、本发明的目的是提供一种基于ai的前端低代码自动化编程方法及系统,以解决背景技术中不足。
2、为了实现上述目的,本发明提供如下技术方案:一种基于ai的前端低代码自动化编程方法,所述编程方法包括以下步骤:
3、编程系统通过自然语言描述编程需求后传递给ai生成内容工具,ai生成内容工具接收编程需求并生成dsl页面,利用ui工具和ue工具自动对dsl页面进行视觉化和交互优化,并依据视觉化和交互优化结果生成反馈;
4、编程系统接收到反馈后,对dsl页面进行回归测试和调优,将调优结果再次传递给ai生成内容工具,ai生成内容工具依据调优结果生成最终dsl页面,并自动对最终dsl页面中的dsl代码进行回归测试和分析,在分析dsl代码质量合格后,将dsl代码开发过程中产生的特性分支代码或修复分支代码合并到主干分支中,并发布生成的最终dsl代码和文档,最终dsl代码经过版本管理后进行交互;
5、结合调优结果以及质量分析结果对最终dsl代码进行分类,并定期分析所有类别的最终dsl代码信息后,判断是否需要重新对ai生成内容工具进行配置和训练。
6、在一个优选的实施方式中,编程系统接收到反馈后,对dsl页面进行回归测试和调优,包括以下步骤:
7、获取dsl页面中代码的规范符合率、执行偏差以及兼容成功率,将规范符合率、执行偏差以及兼容成功率综合计算获取代码系数;
8、将获取的代码系数与预设的系数阈值进行对比,系数阈值用于评估dsl页面中dsl代码质量是否合格;
9、若代码系数大于等于系数阈值,评估dsl页面中dsl代码质量合格,若代码系数小于系数阈值,评估dsl页面中dsl代码质量不合格,需要重新调整dsl代码。
10、在一个优选的实施方式中,结合调优结果以及质量分析结果对最终dsl代码进行分类,包括以下步骤:
11、调优结果包括调优频率和调优时长,调优频率通过调优次数比上监测时长获取,调优时长通过系统日志直接获取;
12、将调优频率和调优时长进行归一化处理,使调优频率和调优时长的取值范围映射到[0,1]之间,获取调优频率归一化值和调优时长归一化值,将调优频率归一化值加上调优时长归一化值获取调优系数;
13、对调优系数以及代码系数进行加权计算获取dsl代码的分类指数,表达式为:,式中,为分类指数,为代码系数,为调优系数;
14、将获取的分类指数与预设的第一指数阈值以及第二指数阈值进行对比,若分类指数大于等于第二指数阈值,将dsl代码划分为一类代码,若分类指数小于第二指数阈值,且分类指数大于等于第一指数阈值,将dsl代码划分为二类代码,若分类指数小于第一指数阈值,将dsl代码划分为三类代码。
15、在一个优选的实施方式中,定期分析所有类别的最终dsl代码信息后,判断是否需要重新对ai生成内容工具进行配置和训练,包括以下步骤:
16、定期获取编程系统一类代码类别中的dsl代码数量,二类代码类别中的dsl代码数量,三类代码类别中的dsl代码数量;
17、将一类代码类别中的dsl代码数量比上总代码数量获取一类代码比例,二类代码类别中的dsl代码数量比上总代码数量获取二类代码比例,三类代码类别中的dsl代码数量比上总代码数量获取三类代码比例;
18、取一类代码比例的80%加上二类代码比例的20%后减去三类代码比例得到优化赋值,若优化赋值大于等于优化阈值,判断不需要重新对ai生成内容工具进行配置和训练,若优化赋值小于优化阈值,判断需要重新对ai生成内容工具进行配置和训练。
19、在一个优选的实施方式中,将dsl代码开发过程中产生的特性分支代码或修复分支代码合并到主干分支中,并发布生成的最终dsl代码和文档,包括以下步骤:
20、拉取主干分支的最新dsl代码,将特性分支或修复分支合并到主干分支,使用文档生成工具生成最新的dsl代码文档,将合并后的dsl代码提交并推送到远程仓库的主干分支;
21、创建新版本标签,标识此次发布的版本,将最终dsl代码部署到生产环境后,更新版本日志,记录本次发布的变更和修复。
22、在一个优选的实施方式中,编程系统接收到反馈后,对dsl页面进行回归测试和调优,还包括以下步骤:
23、从ui工具和ue工具生成的反馈报告中收集具体问题和改进建议,分析反馈内容和分类问题类型,根据反馈中的问题和改进建议,更新现有的测试用例或编写新的测试用例;
24、使用自动化测试工具运行更新后的测试用例,覆盖dsl页面的所有功能和交互路径,记录每个测试用例的执行结果,包括通过、失败和异常情况,汇总自动化测试生成的测试数据和日志文件;
25、分析测试数据后识别出优化过程中是否引入了新的问题或是否存在未解决的旧问题,对回归测试中发现的问题进行分类,包括逻辑错误、性能问题、ui问题;
26、针对不同类型的问题制定调优方案,调优方案包括代码调整、性能优化、视觉改进,根据调优方案对dsl页面进行进一步的调整和优化,对调优后的dsl页面再次运行自动化测试用例,并验证所有问题是否已解决。
27、在一个优选的实施方式中,利用ui工具和ue工具自动对dsl页面进行视觉化和交互优化,并依据视觉化和交互优化结果生成反馈,包括以下步骤:
28、ui工具和ue工具加载由ai生成内容工具生成的dsl页面,分析dsl页面中的各个组件及其属性,包括布局、样式和交互元素,根据设计规范和品牌指南,应用预设的样式和主题到dsl页面;
29、对dsl页面中的各个组件进行视觉美化,包括颜色、字体、边距和对齐,为dsl页面中的交互元素添加预设的交互行为和动画效果,模拟操作,进行可用性测试,根据测试结果,对dsl页面的交互逻辑进行调整和优化。
30、一种基于ai的前端低代码自动化编程系统,包括dsl页面生成模块、测试调优模块、质量分析模块、分类判断模块:
31、dsl页面生成模块:通过自然语言描述编程需求后传递给ai生成内容工具,ai生成内容工具接收编程需求并生成dsl页面;
32、测试调优模块:利用ui工具和ue工具自动对dsl页面进行视觉化和交互优化,并依据视觉化和交互优化结果生成反馈,接收到反馈后,对dsl页面进行回归测试和调优;
33、质量分析模块:通过ai生成内容工具依据调优结果生成最终dsl页面,并自动对最终dsl页面中的dsl代码进行回归测试和分析,在分析dsl代码质量合格后,将dsl代码开发过程中产生的特性分支代码或修复分支代码合并到主干分支中,并发布生成的最终dsl代码和文档,最终dsl代码经过版本管理后进行交互;
34、分类判断模块:结合调优结果以及质量分析结果对最终dsl代码进行分类,并定期分析所有类别的最终dsl代码信息后,判断是否需要重新对ai生成内容工具进行配置和训练。
35、在上述技术方案中,本发明提供的技术效果和优点:
36、1、本发明通过ai生成内容工具接收需求并生成dsl页面,通过ui工具和ue工具自动对生成的dsl页面进行视觉化和交互优化,并依据视觉化和交互优化结果生成反馈,对dsl页面进行回归测试和进一步的调优,ai生成内容工具依据调优结果生成最终dsl页面,并自动对dsl页面中的dsl代码进行回归测试和分析,在分析dsl代码质量合格后,将dsl代码开发过程中产生的特性分支代码或修复分支代码合并到主干分支。该编程系统通过自动化和智能化代码编程、并在编程过程中自动进行代码审查,有效提高代码编程效率和提高代码质量。
37、2、本发明通过结合调优结果以及质量分析结果对生成的dsl代码进行分类,并定期综合分析所有类别的dsl代码信息后判断是否需要重新对ai生成内容工具进行配置和训练,判断结果发送至前端开发团队。该编程系统通过定期结合调优结果以及质量分析结果来分析dsl代码后,评估ai生成内容工具的性能是否达标,从而在ai生成内容工具性能不达标时,提示前端开发团队重新对ai生成内容工具进行配置和训练,进一步保障dsl代码生成的准确性和效率。
1.一种基于ai的前端低代码自动化编程方法,其特征在于:所述编程方法包括以下步骤:
2.根据权利要求1所述的一种基于ai的前端低代码自动化编程方法,其特征在于:编程系统接收到反馈后,对dsl页面进行回归测试和调优,包括以下步骤:
3.根据权利要求2所述的一种基于ai的前端低代码自动化编程方法,其特征在于:结合调优结果以及质量分析结果对最终dsl代码进行分类,包括以下步骤:
4.根据权利要求3所述的一种基于ai的前端低代码自动化编程方法,其特征在于:定期分析所有类别的最终dsl代码信息后,判断是否需要重新对ai生成内容工具进行配置和训练,包括以下步骤:
5.根据权利要求1所述的一种基于ai的前端低代码自动化编程方法,其特征在于:将dsl代码开发过程中产生的特性分支代码或修复分支代码合并到主干分支中,并发布生成的最终dsl代码和文档,包括以下步骤:
6.根据权利要求5所述的一种基于ai的前端低代码自动化编程方法,其特征在于:编程系统接收到反馈后,对dsl页面进行回归测试和调优,还包括以下步骤:
7.根据权利要求6所述的一种基于ai的前端低代码自动化编程方法,其特征在于:利用ui工具和ue工具自动对dsl页面进行视觉化和交互优化,并依据视觉化和交互优化结果生成反馈,包括以下步骤:
8.一种基于ai的前端低代码自动化编程系统,用于实现权利要求1-7任一项所述的编程方法,其特征在于:包括dsl页面生成模块、测试调优模块、质量分析模块、分类判断模块: