后台管理系统的后台开发方法、装置、管理设备及存储介质
技术领域
1.本技术涉及计算机技术领域,系统尤其涉及一种后台管理系统的发方法流开发方法
、
装置
、后台
设备及存储介质
。管理
背景技术:
2.随着游戏技术快速发展,系统技术中心的发方法流各个部门为了支撑游戏业务发展,可根据各个部门的后台游戏业务搭建对应的后台管理系统,以根据后台管理系统实现前端业务和后端业务
。管理
3.在现有技术中,系统由于各个部门之间的发方法流技术差异,各个部门基于自身技术搭建了不同风格的后台后台管理系统
。
随着游戏业务不断扩大,管理后台管理系统的系统数量逐渐增多,各个后台管理系统提供的业务服务的标准
、
规范和前后端技术选型等出现较大的差异,导致各个后台管理系统提供的业务服务或功能很难复用
。
面对各个部门之间的业务存在耦合
、
基础服务或解决方案可以通用的情况,也需要针对各自的后台管理系统进行单独开发,这导致各个部门的同样业务功能或服务在不同后台管理系统中重复开发,造成资源浪费,影响开发效率
。
技术实现要素:
4.本技术提供一种后台管理系统的开发方法
、
装置
、
设备及存储介质,解决了现有技术中各个部门的后台管理系统的标准
、
规范和前后端技术选型不统一的问题,能够降低开发成本,提高开发效率
。
5.第一方面,本技术提供了一种后台管理系统的开发方法,包括:
6.通过脚手架创建后台管理系统的后端项目,创建所述后端项目的数据库,配置所述后端项目的配置信息;
7.根据前端代码模板创建所述后台管理系统的前端项目,配置所述前端项目的环境参数;
8.根据预设的数据模型生成所述数据库的表结构,所述数据模型基于业务场景确定;
9.通过所述表结构和所述脚手架生成所述后端项目和所述前端项目的基础业务代码,所述基础业务代码用于对所述数据库中的数据进行创建
、
更新
、
读取和删除中的至少一种
。
10.第二方面,本技术提供了一种后台管理系统的开发装置,包括:
11.后端项目创建模块,被配置为通过脚手架创建后台管理系统的后端项目,创建所述后端项目的数据库,配置所述后端项目的配置信息;
12.前端项目创建模块,被配置为根据前端代码模板创建所述后台管理系统的前端项目,配置所述前端项目的环境参数;
13.表结构生成模块,被配置为根据预设的数据模型生成所述数据库的表结构,所述
数据模型基于业务场景确定;
14.业务代码生成模块,被配置为通过所述表结构和所述脚手架生成所述后端项目和所述前端项目的基础业务代码,所述基础业务代码用于对所述数据库中的数据进行创建
、
更新
、
读取和删除中的至少一种
。
15.第三方面,本技术提供了一种后台管理系统的开发设备,包括:
16.一个或多个处理器;
17.存储器,存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的后台管理系统的开发方法
。
18.第四方面,本技术提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第一方面所述的后台管理系统的开发方法
。
19.在本技术中,通过脚手架创建后台管理系统的后端项目,创建后端项目的数据库,配置后端项目的配置信息;根据前端代码模板创建后台管理系统的前端项目,配置前端项目的环境参数;根据预设的数据模型生成数据库的表结构,数据模型基于业务场景确定;通过表结构和脚手架生成后端项目和前端项目的基础业务代码,基础业务代码用于对数据库中的数据进行创建
、
更新
、
读取和删除中的至少一种
。
通过上述技术手段,整合各个部门的需求项制定出统一的针对基础业务代码
、
后端项目开发规范
、
前端项目开发规范的业务标准,以根据该业务标准开发出各个部门的标准
、
规范和前后端技术选型统一的后台管理系统,降低了技术门槛和开发成本,提高开发效率
。
通过脚手架针对基础业务快速生成一套基础业务代码,进一步提高了开发效率
。
附图说明
20.图1是本技术实施例提供的一种后台管理系统的开发方法的流程图;
21.图2是本技术实施例提供的基于脚手架创建后端项目的流程图;
22.图3是本技术实施例提供的创建前端项目的流程图;
23.图4是本技术实施例提供的一种后台管理系统的开发装置的结构示意图;
24.图5是本技术实施例提供的一种后台管理系统的开发设备的结构示意图
。
具体实施方式
25.为了使本技术的目的
、
技术方案和优点更加清楚,下面结合附图对本技术具体实施例作进一步的详细描述
。
可以理解的是,此处所描述的具体实施例仅仅用于解释本技术,而非对本技术的限定
。
另外还需要说明的是,为了便于描述,附图中仅示出了与本技术相关的部分而非全部内容
。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法
。
虽然流程图将各项操作
(
或步骤
)
描述成顺序的处理,但是其中的许多操作可以被并行地
、
并发地或者同时实施
。
此外,各项操作的顺序可以被重新安排
。
当其操作完成时处理可以被终止,但是还可以具有未包括在附图中的附加步骤
。
处理可以对应于方法
、
函数
、
规程
、
子例程
、
子程序等等
。
26.本技术的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序
。
应该理解这样使用的数据在适当情况下可以互换,以便本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个
。
此外,说明书以及权利要求中“和
/
或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系
。
27.在较为常见的现有实现方式中,由于各个部门之间的技术存在差异,各个部门基于自身技术搭建了不同风格的后台管理系统
。
随着游戏业务不断扩大,后台管理系统的数量逐渐增多,各个后台管理系统提供的业务服务的标准
、
规范和前后端技术选型等出现较大的差异,导致各个后台管理系统提供的业务服务或功能很难复用
。
面对各个部门之间的业务存在耦合
、
基础服务或解决方案可以通用的情况,也需要针对各自的后台管理系统进行单独开发,这导致各个部门的同样业务功能或服务在不同后台管理系统中重复开发,造成资源浪费,影响开发效率
。
28.为解决上述问题,本实施例提供了一种后台管理系统的开发方法
。
29.本实施例中提供的后台管理系统的开发方法可以由后台管理系统的开发设备执行,该后台管理系统的开发设备可以通过软件和
/
或硬件的方式实现,该后台管理系统的开发设备可以是两个或多个物理实体构成,也可以是一个物理实体构成
。
例如后台管理系统的开发设备可以是计算机
。
30.后台管理系统的开发设备安装有至少一类操作系统,其中,操作系统包括但不限定于安卓系统
、linux
系统及
windows
系统
。
后台管理系统的开发设备可以基于操作系统安装至少一个应用程序,应用程序可以为操作系统自带的应用程序,也可以为从第三方设备或者服务器中下载的应用程序
。
在该实施例中,后台管理系统的开发设备至少有可以执行后台管理系统的开发方法的应用程序
。
31.为便于理解,本实施例以计算机为执行后台管理系统的开发方法的主体为例进行描述
。
32.图1给出了本技术实施例提供的一种后台管理系统的开发方法的流程图
。
33.参考图1,该后台管理系统的开发方法具体包括:
34.s110、
通过脚手架创建后台管理系统的后端项目,创建后端项目的数据库,配置后端项目的配置信息
。
35.其中,脚手架是一种开发工具,其可以根据业务需求搭建后台管理系统,有利于提高后台管理系统的开发效率
。
其中,后台管理系统是一个前端和后端分离的框架,本实施例通过分别搭建后端框架和前端框架来实现后台管理系统的搭建
。
36.在后端框架的搭建过程中,基于业务需求通过脚手架创建技术统一且符合业务标准的后端项目
。
在一实施例中,图2是本技术实施例提供的基于脚手架创建后端项目的流程图
。
如图2所示,该基于脚手架创建后端项目的步骤具体包括
s1101-s1102
:
37.s1101、
通过脚手架获取后端代码模板,通过后端代码模板创建初始化的后端项目
。
38.在本实施例中,脚手架提供三种后端代码模板,分别为后台通用模块的代码模板
、
包含网站服务的代码模板和多服务入口的代码模板,所述多服务包括网站服务
、
守护进程服务和定时任务进程服务
。
可根据业务需求选择对应的后端代码模板创建对应的后端项目
。
示例性的,在开发一个标准的后台管理系统的情况下,可使用
gt int.
指令获取后台通用模块的代码模板,以基于后台通用模块的代码模板创建一个包含后台通用模块的初始化
后端项目
。
在开发一个可以简单满足网站需求的后台管理系统的情况下,可使用
gt init.-ms
获取包含网站服务的代码模板,以基于包含网站服务的代码模板创建一个只包含网站服务的初始化后端项目
。
在开发一个可以满足复杂业务的后台管理系统的情况下,可使用
gt init.-ms-a
获取多服务入口的代码模板,基于多服务入口的代码模板创建一个多服务入口的初始化后端项目
。
需要说明的,针对复杂的业务场景,即需要网站服务入口来对外提供网站服务,又需要守护进程服务比如消息通知和用户画像等场景来支撑网站服务的运行,在特定场景如每日数据统计和游戏的每日活动数据清理等可能也需要定时任务进程的支持
。
39.s1102、
下载后端项目的依赖包,将后端项目的依赖包导入后端项目
。
40.示例性的,在创建初始化后端项目后,使用指令
go mod tidy
下载后端项目的依赖包到本地,并将依赖包导入后端项目,以便后续使用到依赖包时直接进行补充和添加
。
41.在创建后端项目后,创建后端项目的数据库,对数据库内的数据进行初始化设置,根据用户使用文档修改数据库指定的用户基本信息
。
按照用户使用文档的配置信息说明,和
/
或结合后端项目的实际情况,对后端项目的配置信息进行配置
。
在该实施例中,可基于用户使用文档的配置信息说明,配置后端项目的
jwt
认证
、
日志和服务启动信息
。
示例性的,用户可事先根据部门业务对后端项目的
jwt
认证
、
日志和服务启动信息的需求在用户使用文档中编写配置信息说明,以基于用户使用文档配置后端项目关于
jwt
认证
、
日志和服务启动信息的配置信息,快速实现该后端需求,快速实现该需求,提升开发效率
。
42.在完成后端项目的配置信息的配置后,可使用
go run main.go
启动后端项目,至此完成后端框架的搭建
。
43.在一实施例中,在完成后端项目的配置信息的配置后,根据后端项目的资源目录存储的配置文件,配置后端项目的环境;其中,配置文件包括开发环境
、
生产环境和测试环境的配置文件
。
示例性的,初始化后端项目的
manifest/config
资源目录下存储有三个配置文件,分别针对开发环境
、
生产环境和测试环境,用户可根据后台管理系统的实际情况选择不同的配置文件,以实现后台管理系统在多种环境之间切换,扩宽后台管理系统的应用场景
。
44.在该实施例中,在用户选择的配置文件为
config.dev.yaml
时,配置后端项目的环境为开发环境;在用户选择的配置文件为
config.prod.yaml
时,配置后端项目的环境为生产环境;在用户选择的配置文件为
config.test.yaml
时,配置后端项目的环境为测试环境
。
示例性的,通过指令
go run main.go
‑‑
gf.gcfg.file
=
config.dev.yaml
配置后端项目的环境为开发环境并启动后端项目;通过指令
go run main.go
‑‑
gf.gcfg.file
=
config.prod.yaml
配置后端项目的环境为生产环境并启动后端项目;通过指令
go run main.go
‑‑
gf.gcfg.file
=
config.test.yaml
配置后端项目的环境为测试环境并启动后端项目
。
45.s120、
根据前端代码模板创建后台管理系统的前端项目,配置前端项目的环境参数
。
46.在前端框架的搭建过程中,下载前端代码模板,以通过前端代码模板搭建技术统一且符合业务标准的前端项目,配置前端项目的环境参数,启动前端项目以完成前端框架的搭建
。
47.在一实施例中,图3是本技术实施例提供的创建前端项目的流程图
。
如图3所示,该
创建前端项目的步骤具体包括
s1201-s1202
:
48.s1201、
通过远程仓库下载前端代码模板,根据前端代码模板创建前端项目,安装前端项目的依赖项
。
49.示例性的,使用指令
git clone
加上存储有前端代码模板的远程仓库的地址,以从远程仓库下载前端代码模板,根据前端代码模板创建前端项目
。
使用指令
pnpminstall
安装前端项目的依赖项
。
50.s1202、
根据用户使用文档在前端项目的环境配置文件中配置环境参数
。
51.示例性的,用户可事先根据部门业务对前端项目的环境需求在用户使用文档编写对应的环境参数,以便在搭建前端框架时,根据用户使用文档在前端项目配置环境配置文件
(env.delelopment)
中的环境参数
。
52.在配置完前端项目的环境参数后,使用指令
pnpm run dev:home
启动前端项目,至此完成前端框架的搭建
。
53.s130、
根据预设的数据模型生成数据库的表结构,数据模型基于业务场景确定
。
54.在搭建出后端框架和前端框架后,一个前端和后端分离的后台管理系统的框架搭建完毕,其包含有
jwt
认证
、
日志管理
、
菜单管理
、
权限管理和用户管理
、
链路追踪和内置监控等功能
。
接下来根据脚手架提供的命令行工具快速开发前端项目和后端项目的业务功能
。
55.在开发业务功能之前,各个部门可根据各自使用的后台管理系统的业务场景,事先设计业务场景对应的数据模型
。
根据业务场景对应的数据模型生成后台管理系统也即后端项目的数据库的表结构,表结构符合技术中心数据库设计规范
。
56.s140、
通过表结构和脚手架生成后端项目和前端项目的基础业务代码,基础业务代码用于对数据库中的数据进行创建
、
更新
、
读取和删除中的至少一种
。
57.在本实施例中,脚手架提供了
curd
代码生成模板,
curd
表征
(create)、
更新
(update)、
读取
(read)
和删除
(delete)
操作,
curd
定义了用于处理数据的基本原子操作
。
对此,基于数据库的表结构,可通过脚手架提供的
curd
代码生成模板自动生成前端项目和后端项目用于对数据库中的数据进行创建
、
更新
、
读取和
/
或删除操作的基础业务代码
。
示例性的,在数据库的根目录下执行命令
gt curd
后,可自动生成基础业务代码,无需人工编码,提升了开发效率
。
58.在一实施例中,通过脚手架生成的基础业务代码可能与后端框架和
/
或前端框架的代码结构不符
。
对此,在生成基础业务代码后,可基于基础业务代码调整后端项目和前端项目的代码结构,基于调整后的代码重启后端项目和前端项目
。
示例性的,根据基础业务代码的代码结构,将前端框架和后端框架的代码结构调整为符合基础业务代码的代码结构
。
在调整后的前端项目和后端项目继续运行可能会出现运行错误,因此需对前端项目和后端项目进行重启,以使得前端项目和后端项目基于调整后的代码运行,保证后台管理系统的运行可靠性
。
在该实施例中,使用指令
go run main.go
重启后端项目,使用指令
pnpm run dev:home
重启前端项目
。
59.综上,本技术实施例提供的后台管理系统的开发方法,通过脚手架创建后台管理系统的后端项目,创建后端项目的数据库,配置后端项目的配置信息;根据前端代码模板创建后台管理系统的前端项目,配置前端项目的环境参数;根据预设的数据模型生成数据库
的表结构,数据模型基于业务场景确定;通过表结构和脚手架生成后端项目和前端项目的基础业务代码,基础业务代码用于对数据库中的数据进行创建
、
更新
、
读取和删除中的至少一种
。
通过上述技术手段,整合各个部门的需求项制定出统一的针对基础业务代码
、
后端项目开发规范
、
前端项目开发规范的业务标准,以根据该业务标准开发出各个部门的标准
、
规范和前后端技术选型统一的后台管理系统,降低了技术门槛和开发成本,提高开发效率
。
通过脚手架针对基础业务快速生成一套基础业务代码,进一步提高了开发效率
。
60.在上述实施例的基础上,图4为本技术实施例提供的一种后台管理系统的开发装置的结构示意图
。
参考图4,本实施例提供的后台管理系统的开发装置具体包括:后端项目创建模块
21、
前端项目创建模块
22、
表结构生成模块
23
和业务代码生成模块
24。
61.其中,后端项目创建模块
21
,被配置为通过脚手架创建后台管理系统的后端项目,创建后端项目的数据库,配置后端项目的配置信息;
62.前端项目创建模块
22
,被配置为根据前端代码模板创建后台管理系统的前端项目,配置前端项目的环境参数;
63.表结构生成模块
23
,被配置为根据预设的数据模型生成数据库的表结构,数据模型基于业务场景确定;
64.业务代码生成模块
24
,被配置为通过表结构和脚手架生成后端项目和前端项目的基础业务代码,基础业务代码用于对数据库中的数据进行创建
、
更新
、
读取和删除中的至少一种
。
65.在上述实施例的基础上,后端项目创建模块
21
包括:后端项目创建单元,被配置为通过脚手架获取后端代码模板,通过后端代码模板创建初始化的后端项目;依赖包导入单元,被配置为下载后端项目的依赖包,将后端项目的依赖包导入后端项目
。
66.在上述实施例的基础上,后端代码模板包括包含后台通用模块的代码模板
、
包含网站服务的代码模板和多服务入口的代码模板,多服务包括网站服务
、
守护进程服务和定时任务进程服务
。
67.在上述实施例的基础上,后端项目创建模块
21
包括:信息配置单元,被配置为基于用户使用文档的配置信息说明,配置后端项目的
jwt
认证
、
日志和服务启动信息
。
68.在上述实施例的基础上,后端项目创建模块
21
还包括:环境配置单元,被配置为在配置后端项目的配置信息之后,根据后端项目的资源目录存储的配置文件,配置后端项目的环境;其中,配置文件包括开发环境
、
生产环境和测试环境的配置文件
。
69.在上述实施例的基础上,前端项目创建模块
22
包括:前端项目创建单元,被配置为通过远程仓库下载前端代码模板,根据前端代码模板创建前端项目,安装前端项目的依赖项;环境参数配置单元,被配置为根据用户使用文档在前端项目的环境配置文件中配置环境参数
。
70.在上述实施例的基础上,后台管理系统的开发装置还包括:项目重启模块,被配置为在通过表结构和脚手架生成后端项目和前端项目的基础业务代码之后,基于基础业务代码调整后端项目和前端项目的代码结构,基于调整后的代码重启后端项目和前端项目
。
71.上述,本技术实施例提供的后台管理系统的开发装置,通过脚手架创建后台管理系统的后端项目,创建后端项目的数据库,配置后端项目的配置信息;根据前端代码模板创建后台管理系统的前端项目,配置前端项目的环境参数;根据预设的数据模型生成数据库
的表结构,数据模型基于业务场景确定;通过表结构和脚手架生成后端项目和前端项目的基础业务代码,基础业务代码用于对数据库中的数据进行创建
、
更新
、
读取和删除中的至少一种
。
通过上述技术手段,整合各个部门的需求项制定出统一的针对基础业务代码
、
后端项目开发规范
、
前端项目开发规范的业务标准,以根据该业务标准开发出各个部门的标准
、
规范和前后端技术选型统一的后台管理系统,降低了技术门槛和开发成本,提高开发效率
。
通过脚手架针对基础业务快速生成一套基础业务代码,进一步提高了开发效率
。
72.本技术实施例提供的后台管理系统的开发装置可以用于执行上述实施例提供的后台管理系统的开发方法,具备相应的功能和有益效果
。
73.图5是本技术实施例提供的一种后台管理系统的开发设备的结构示意图,参考图5,该后台管理系统的开发设备包括:处理器
31、
存储器
32、
通信装置
33、
输入装置
34
及输出装置
35。
该后台管理系统的开发设备中处理器
31
的数量可以是一个或者多个,该后台管理系统的开发设备中的存储器
32
的数量可以是一个或者多个
。
该后台管理系统的开发设备的处理器
31、
存储器
32、
通信装置
33、
输入装置
34
及输出装置
35
可以通过总线或者其他方式连接
。
74.存储器
32
作为一种计算机可读存储介质,可用于存储软件程序
、
计算机可执行程序以及模块,如本技术任意实施例的后台管理系统的开发方法对应的程序指令
/
模块
(
例如,后台管理系统的开发装置中的后端项目创建模块
21、
前端项目创建模块
22、
表结构生成模块
23
和业务代码生成模块
24)。
存储器
32
可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统
、
至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等
。
此外,存储器
32
可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件
、
闪存器件
、
或其他非易失性固态存储器件
。
在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至设备
。
上述网络的实例包括但不限于互联网
、
企业内部网
、
局域网
、
移动通信网及其组合
。
75.通信装置
33
用于进行数据传输
。
76.处理器
31
通过运行存储在存储器
32
中的软件程序
、
指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的后台管理系统的开发方法
。
77.输入装置
34
可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入
。
输出装置
35
可包括显示屏等显示设备
。
78.上述提供的后台管理系统的开发设备可用于执行上述实施例提供的后台管理系统的开发方法,具备相应的功能和有益效果
。
79.本技术实施例还提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种后台管理系统的开发方法,该后台管理系统的开发方法包括:通过脚手架创建后台管理系统的后端项目,创建后端项目的数据库,配置后端项目的配置信息;根据前端代码模板创建后台管理系统的前端项目,配置前端项目的环境参数;根据预设的数据模型生成数据库的表结构,数据模型基于业务场景确定;通过表结构和脚手架生成后端项目和前端项目的基础业务代码,基础业务代码用于对数据库中的数据进行创建
、
更新
、
读取和删除中的至少一种
。
80.存储介质
——
任何的各种类型的存储器设备或存储设备
。
术语“存储介质”旨在包
括:安装介质,例如
cd-rom、
软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如
dram、ddr ram、sram、edo ram
,兰巴斯
(rambus)ram
等;非易失性存储器,诸如闪存
、
磁介质
(
例如硬盘或光存储
)
;寄存器或其它相似类型的存储器元件等
。
存储介质可以还包括其它类型的存储器或其组合
。
另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络
(
诸如因特网
)
连接到第一计算机系统
。
第二计算机系统可以提供程序指令给第一计算机用于执行
。
术语“存储介质”可以包括驻留在不同位置中
(
例如在通过网络连接的不同计算机系统中
)
的两个或更多存储介质
。
存储介质可以存储可由一个或多个处理器执行的程序指令
(
例如具体实现为计算机程序
)。
81.当然,本技术实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的后台管理系统的开发方法,还可以执行本技术任意实施例所提供的后台管理系统的开发方法中的相关操作
。
82.上述实施例中提供的后台管理系统的开发装置
、
存储介质及后台管理系统的开发设备可执行本技术任意实施例所提供的后台管理系统的开发方法,未在上述实施例中详尽描述的技术细节,可参见本技术任意实施例所提供的后台管理系统的开发方法
。
83.上述仅为本技术的较佳实施例及所运用的技术原理
。
本技术不限于这里的特定实施例,对本领域技术人员来说能够进行的各种明显变化
、
重新调整及替代均不会脱离本技术的保护范围
。
因此,虽然通过以上实施例对本技术进行了较为详细的说明,但是本技术不仅仅限于以上实施例,在不脱离本技术构思的情况下,还可以包括更多其他等效实施例,而本技术的范围由权利要求的范围决定
。