一种标准化编程的智能辅助工具及其工作方法与流程

文档序号:27400695发布日期:2021-11-15 23:25阅读:119来源:国知局
一种标准化编程的智能辅助工具及其工作方法与流程

1.本发明涉及辅助编程的软件系统技术领域,尤其涉及一种标准化编程的智能辅助工具及其工作方法。


背景技术:

2.自上世纪90年代以来,it行业蓬勃发展,尤其是近十来年互联网、移动互联网的飞速发展,带动了it技术的日益革新;编程语言如c、c++、java、python等,编程框架如spring、springboot、springcloud等,开源代码github、gitee等,智能编程产品如outsystems、powerapps、appmaker、腾讯lowcode、阿里宜搭等日新月异;然而,it技术的飞速发展,并没能解决it行业一直存在的弊病:标准化编程问题。
3.it业界的程序员,仍然还遵循着固有的成长轨迹:在校园里接受编程的理论学习、通过培训机构强化学习、进入企业中摸索、在项目中试练;新手程序员与前辈相比,差别仅在于前辈是学习c++,而他是学习python;每个程序员的编码习惯来源于各自的学习途径和通过搜索引擎获取的代码片段;新手程序员前辈犯过的错误,新手程序员几乎要重复踩坑;前辈曾经不规范的编程风格,新手程序员几乎会重现成另一种形态。
4.业界尝试过很多方式,试图解决这个问题,包括且不限于以下方式:
5.1、编码规范:制定详细的编码规范,要求程序员遵循,但该方法一方面规范能约束的范围有限,另一方面规范的理解和执行能力千差万别,效果差;
6.2、管理制度:与方式1配合,制定严格的管理制度,但该方法效果完全依赖于执行人,效果差;
7.3、架构分离:架构解耦,把功能封装成组件,组件实现和组件调用拆分成不同团队去做,但该方法当组件变多之后,管理成本极高,且应用效果参差不齐,效果不理想;
8.4、低码开发平台:通过开发平台屏蔽编码细节,让程序员少写代码,但该方法只会让能写程序的程序员越来越少。
9.综上所述,标准化编程问题一直无法解决,带来诸多影响:
10.(1)程序员重复犯错,项目成本高;
11.(2)编程风格多样,维护成本大;
12.(3)程序员学和用脱节,学习难度大,成长缓慢,校企间存在巨大鸿沟。


技术实现要素:

13.本发明旨在解决现有技术中的上述技术问题,为此,本发明的目的在于提出一种能让程序员快速学习前辈的标准化编程方式、降低编程成本、实现学习和使用融为一体、快速且大幅提高效率的标准化编程的智能辅助工具及其工作方法。
14.本发明解决上述技术问题的技术方案如下:一种标准化编程的智能辅助工具,包括基础技术架构模块、组件库模块、智能编程助手模块以及应用课程模块,所述组件库模块基于基础技术架构模块构建各架构的组件,所述智能编程助手模块为用户交互窗口,用户
通过所述智能编程助手得到标准化的代码,所述应用课程模块包括多种应用学习课程。
15.优选的,所述智能编程助手模块包括项目管理模块、库表映射模块、接口api设计和管理模块、页面可视化设计器以及在线预览模块。
16.优选的,所述项目管理模块包括项目的信息设置以及根据项目去管理所开发的业务功能,所述项目的信息设置包括项目基本信息和数据源设置,所述项目基本信息包括项目名称、项目英文名称、项目icon、项目类型、项目描述、项目标签,所述数据源设置包括设置项目的数据源类型、主机名/ip、用户名、密码、数据库端口、数据库,填写完成后进行连接测试,连接测试通过后保存配置信息;用户在后面的开发中,通过客户端连接工具可以直接连接所配置的项目数据库,读取数据信息以快速配置所需业务功能。
17.优选的,所述库表映射模块为能够映射程序员指定的数据库,用户通过客户端实现在线的编程助手工具与程序员本地数据库的连接通道。
18.优选的,所述接口api设计和管理模块为可以配置接口路径和名称名称、接口描述、接口请求类型、接口动作、请求参数、响应参数、数据模型的模块,配置请求参数和响应参数时,通过库表映射模块快速地选取库表的字段作为参数,根据这些信息自动生成接口的代码,并生成主要的接口协议信息,程序员把这些信息拷贝到接口协议配置中,就能够快速完成接口协议的配置说明,对于单表接口无法实现的数据表操作接口,直接在生成的xml文件中去修改sql语句,从而完成复杂逻辑的处理,还提供发布工具,可以在本地快速发布,程序员通过postman工具,就可以发起测试,还提供接口查询的入口,程序员既可以按照接口的目录结构进行查询,也可以按照指定页面去查询所需的接口,查看接口详情可以查看到接口的详细信息,包括接口的名称、请求地址、业务逻辑、请求参数、返回参数。
19.优选的,所述页面可视化设计器包括页面管理、组件库、自定义组件、页面模板、页面设计器以及预览和代码生成模块,所述页面管理为树形管理页面目录,并能够快速创建pc页面、创建子页面、修改删除页面,所述组件库包括基础组件、图表组件库以及自定义组件,所述基础组件集成第三方框架,如element

ui、uviewi的常用组件用法,所述图表组件库集成各类常用图表,可快速设计出各种统计分析、地图导航类项目,所述自定义组件根据常用业务的特点,总结提炼一些常用的功能,封装成组件的方式,供其它页面使用,所述页面模板为设计器将用户设计好的页面自动保存为模板,其他页面可快速引入使用,所述页面设计器为拖拽式组件设计,所述预览和代码生成为用户可随时点击运行进行预览真实的效果的模块。
20.优选的,所述在线预览模块包括在线构建和预览模块、代码生成与下载模块、接口文档生成与下载模块以及数据库文档生成与下载模块,所述在线构建和预览模块项目的配置完成后,通过项目在线构建功能,可直接生成项目的运行服务,程序员可以直接在线预览所配置的功能效果,所述代码生成与下载模块根据用户配置的业务规则,自动生成无任何封装的源代码,提供给用户使用,所述接口文档生成与下载模块支持一键生成项目的接口文档,并可下载查看,所述数据库文档生成与下载模块支持一键生成项目的数据库文档,并可下载查看。
21.优选的,所述基础技术架构模块包括业界主流的前后端分离架构,前端web采用vue+html5框架、前端app采用uni

app框架、后端采用j2ee的springcloud微服务框架。
22.优选的,所述组件库模块针对前端应用,包括基础组件、图表组件以及自定义组
件,所述基础组件集成第三方框架比如element

ui、uview的常用组件用法,所述图表组件库集成各类常用图表,可快速设计出各种统计分析、地图导航类项目,所述自定义组件根据常用业务的特点,总结提炼一些常用的功能,封装成组件的方式,供其它页面使用。
23.优选的,所述应用课程需要充分考虑到使用者的能力水平和学习效果,应用课程首先需要由浅入深,引导新手快速上手,了解和掌握基本的开发工具和运行原理,这就需要包括环境安装、工程运行、命名规范、编程常用技能、实例讲解等方面的讲解;其次,考虑到技术知识点众多,程序员往往受困于学会了知识点但不知道如何用,因此应用课程需要能够把技术知识点进行切分并从应用的角度进行重组,以拓扑方式展示、逐级深入,并与项目源码无缝结合进行实例讲解,程序员可以按需查找和学习,边学边用。
24.还提供了一种标准化编程的智能辅助工具的工作方法,包括以下步骤:
25.(1)程序员获取项目需求,进行需求分析及库表设计;
26.(2)程序员通过所述项目管理模块功能创建项目,并建立库表连接;
27.(3)程序员根据业务需求,建立库表映射;
28.(4)定义接口,并通过工具生成接口代码;
29.(5)通过页面可视化设计器,设计业务所需页面,并自动生成源代码;
30.(6)通过在线预览模块预览功能效果,并下载源代码到本地工程中;
31.(7)程序员通过应用课程模块,掌握所生成源代码的运行原理;
32.(8)程序员根据业务的需求,对源代码进行必要的修改和调整。
33.采用上述方案的有益效果是:本发明既吸收了低代码平台的优点,极大地降低开发者的能力要求,并且极大地提升了效率;又提供标准格式的源代码给开发者,降低了时间成本和开发程序的金钱成本,是开发者快速成长进步的良师益友,开发者既可借助此平台快速生成源代码,又可通过本平台快速学习前辈的标准化编程方式,应该在市场上广泛地推广使用。
附图说明
34.图1为本发明一种标准化编程的智能辅助工具的架构示意图;
35.图2为本发明智能编程助手模块的架构示意图;
36.图3为本发明一种标准化编程的智能辅助工具的工作流程图。
具体实施方式
37.以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
38.如图1、图2所示,一种标准化编程的智能辅助工具,包括基础技术架构模块、组件库模块、智能编程助手模块以及应用课程模块,所述组件库模块基于基础技术架构模块构建各架构的组件库,所述智能编程助手模块为用户交互窗口,用户通过所述智能编程助手得到标准化的代码,所述应用课程模块包括多种应用学习课程。
39.所述智能编程助手模块包括项目管理模块、库表映射模块、接口api设计和管理模块、页面可视化设计器以及在线预览模块。
40.其中,所述项目管理模块包括项目的信息设置以及根据项目去管理所开发的业务
功能,所述项目的信息设置包括项目基本信息和数据源设置,所述项目基本信息包括项目名称、项目英文名称、项目icon、项目类型、项目描述、项目标签,所述数据源设置包括设置项目的数据源类型、主机名/ip、用户名、密码、数据库端口、数据库,填写完成后进行连接测试,连接测试通过后保存配置信息;用户在后面的开发中,通过客户端连接工具可以直接连接所配置的项目数据库,读取数据信息以快速配置所需业务功能。
41.其中,所述库表映射模块为能够映射程序员指定的数据库,用户通过客户端实现在线的编程助手工具与程序员本地数据库的连接通道,所述接口api设计和管理模块为可以配置接口路径和名称名称、接口描述、接口请求类型、接口动作、请求参数、响应参数、数据模型的模块,配置请求参数和响应参数时,通过库表映射模块快速地选取库表的字段作为参数,根据这些信息自动生成接口的代码,并生成主要的接口协议信息,程序员把这些信息拷贝到接口协议配置中,就能够快速完成接口协议的配置说明,对于单表接口无法实现的数据表操作接口,直接在生成的xml文件中去修改sql语句,从而完成复杂逻辑的处理,还提供发布工具,可以在本地快速发布,程序员通过postman工具,就可以发起测试,还提供接口查询的入口,程序员既可以按照接口的目录结构进行查询,也可以按照指定页面去查询所需的接口,查看接口详情可以查看到接口的详细信息,包括接口的名称、请求地址、业务逻辑、请求参数、返回参数。
42.其中,所述页面可视化设计器包括页面管理、组件库、自定义组件、页面模板、页面设计器以及预览和代码生成模块,所述页面管理为树形管理页面目录,并能够快速创建pc页面、创建子页面、修改删除页面,所述组件库包括基础组件、图表组件库以及自定义组件,所述基础组件集成第三方框架,如element

ui、uviewi的常用组件用法,如输入框、文本域、单选、多选、下拉框、下拉树等,所述图表组件库集成各类常用图表,可快速设计出各种统计分析、地图导航类项目,如集成折线图、柱状图、条形图、饼图、环图、地形图、高德地图、百度地图等各类常用图表,所述自定义组件根据常用业务的特点,总结提炼一些常用的功能,封装成组件的方式,供其它页面使用,自定义组件不仅提供调用方法,组件的源码也将全部提供出来,所述页面模板为设计器将用户设计好的页面自动保存为模板,其他页面可快速引入使用,充分满足当下开发者模块化、组件化、可复用的编程思想,所述页面设计器为拖拽式组件设计,支持复制、粘贴、剪切到任何位置,同时有强大的快捷键处理中心,将各常用操作设置成快捷键较大程度的提高设计人员的效率;画布、属性设置面板、事件面板、样式设计面板均可拖动,设计器支持全屏、清除、撤销、重做等;支持生命周期,项目资源管理,class样式(less/css),用户拖动组件进入设计器,右侧会出现属性设置面板,可便捷的设置组件属性,实时改变组件状态,样式编辑器含简单属性以及高级属性,常用样式可快速点击设置,同时支持手动改写样式,所述预览和代码生成为用户可随时点击运行进行预览真实的效果的模块,设计器可直接将用户的设计渲染成真实的项目,所见所得,无需等待;能够自动生成精简高效的源代码,提供给使用者下载使用。
43.其中,所述在线预览模块包括在线构建和预览模块、代码生成与下载模块、接口文档生成与下载模块以及数据库文档生成与下载模块,所述在线构建和预览模块项目的配置完成后,通过项目在线构建功能,可直接生成项目的运行服务,程序员可以直接在线预览所配置的功能效果,所述代码生成与下载模块根据用户配置的业务规则,自动生成无任何封装的源代码,代码生成是基于基础技术框架模块,通过基础技术框架模块,提炼出业界主流
的技术框架,比如基于ssm的j2ee微服务框架、基于vue+elementui的前端页面框架。基础技术框架模块不仅仅提供各种技术体系,还包括相关的基础功能,是一个个可运行的无业务功能的源码工程,提供给用户使用,所述接口文档生成与下载模块支持一键生成项目的接口文档,支持doc/pdf,并可下载查看,所述数据库文档生成与下载模块支持一键生成项目的数据库文档,支持doc/pdf,并可下载查看。
44.其中,所述基础技术架构模块包括业界主流的前后端分离架构,前端web采用vue+html5框架、前端app采用uni

app框架、后端采用j2ee的springcloud微服务框架。
45.其中,所述组件库模块针对前端应用,包括基础组件、图表组件以及自定义组件,所述基础组件集成第三方框架比如element

ui、uview的常用组件用法,所述图表组件库集成各类常用图表,可快速设计出各种统计分析、地图导航类项目,所述自定义组件根据常用业务的特点,总结提炼一些常用的功能,封装成组件的方式,供其它页面使用。
46.其中,所述应用课程需要充分考虑到使用者的能力水平和学习效果,应用课程首先需要由浅入深,引导新手快速上手,了解和掌握基本的开发工具和运行原理,这就需要包括环境安装、工程运行、命名规范、编程常用技能、实例讲解等方面的讲解;其次,考虑到技术知识点众多,程序员往往受困于学会了知识点但不知道如何用,因此应用课程需要能够把技术知识点进行切分并从应用的角度进行重组,以拓扑方式展示、逐级深入,并与项目源码无缝结合进行实例讲解,程序员可以按需查找和学习,边学边用。
47.如图3所示,还提供了一种标准化编程的智能辅助工具的工作方法,包括以下步骤:
48.(1)程序员获取项目需求,进行需求分析及库表设计;
49.(2)程序员通过所述项目管理模块功能创建项目,并建立库表连接;
50.(3)程序员根据业务需求,建立库表映射;
51.(4)定义接口,并通过工具生成接口代码;
52.(5)通过页面可视化设计器,设计业务所需页面,并自动生成源代码;
53.(6)通过在线预览模块预览功能效果,并下载源代码到本地工程中;
54.(7)程序员通过应用课程模块,掌握所生成源代码的运行原理;
55.(8)程序员根据业务的需求,对源代码进行必要的修改和调整。
56.以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1