一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于容器的课程编排方法、系统及相关装置与流程

2022-06-01 01:58:55 来源:中国专利 TAG:


1.本技术涉及数据编排领域,特别涉及一种基于容器的课程编排方法、系统及相关装置。


背景技术:

2.当前,在线课程通常存在不同类型的课程,他们的模型结构互不相同,从而使得业务人员需要先理解每个课程的模型结构,方能实现页面配置和编排,且不同类型的课程,其当前的应用状态并不相同,在进行课程编排时,无法有效考虑不同课程的当前应用状态,使得编排得到的课程反馈不佳,影响用户体验。


技术实现要素:

3.本技术的目的是提供一种基于容器的课程编排方法、课程编排系统、计算机可读存储介质和电子设备,能够灵活编排课程,提升用户满意度。
4.为解决上述技术问题,本技术提供一种基于容器的课程编排方法,具体技术方案如下:
5.接收课程编排请求;
6.确定所述课程编排请求中的课程类型;
7.若通用容器满足所述课程类型的配置需求,利用通用容器为每种课程类型配置相应的容器;
8.编排所述容器并组课,得到课程实例。
9.可选的,还包括:
10.为所述通用容器配置通用扩展点,所述通用扩展点用于扩充所述通用容器对应的课程类型。
11.可选的,若通用容器无法满足所述课程类型的配置需求,还包括:
12.创建具体容器,并利用动态语言groovy配置所述具体容器的具体扩展点;所述具体扩展点用于扩展所述具体容器包含的课程。
13.可选的,还包括:
14.为所述容器或所述具体容器中的每种课程配置相应的统一状态机;所述统一状态机用于记录各所述课程的学习进度。
15.可选的,还包括:
16.接收到目标课程的升级请求时,对所述目标课程所属类型对应的容器进行升级,以便升级所述目标课程,并记录升级前后的版本号变化。
17.可选的,所述容器包含通用属性和通用行为;所述通用属性包括未开始学习、学习中和已完成学习,所述通用行为包括开始学习、继续学习和重新学习。
18.本技术还提供一种基于容器的课程编排系统,包括:
19.请求接收模块,用于接收课程编排请求;
20.课程确定模块,用于确定所述课程编排请求中的课程类型;
21.容器配置模块,用于若通用容器满足所述课程类型的配置需求,利用通用容器为每种课程类型配置相应的容器;
22.课程编排模块,用于编排所述容器并组课,得到课程实例。
23.可选的,还包括:
24.容器扩展模块,用于为所述通用容器配置通用扩展点,所述通用扩展点用于扩充所述通用容器对应的课程类型。
25.本技术还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法的步骤。
26.本技术还提供一种电子设备,包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如上所述的方法的步骤。
27.本技术提供一种基于容器的课程编排方法,包括:接收课程编排请求;确定所述课程编排请求中的课程类型;若通用容器满足所述课程类型的配置需求,利用通用容器为每种课程类型配置相应的容器;编排所述容器并组课,得到课程实例。
28.本技术在编排课程时,利用通用容器创建相对应课程类型的课程,从而基于容器进行编排,能够降低不同类型课程在编排时的相互影响,进而降低课程编排复杂度,同时基于通用容器能够快速建立不同类型课程的容器,提高编排效率。
29.本技术还提供一种基于容器的课程编排系统、计算机可读存储介质和电子设备,具有上述有益效果,此处不再赘述。
附图说明
30.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
31.图1为本技术实施例所提供的基于容器的课程编排方法的流程图;
32.图2为本技术实施例所提供的基于容器的课程编排系统结构示意图。
具体实施方式
33.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
34.请参考图1,图1为本技术实施例所提供的基于容器的课程编排方法的流程图,该方法包括:
35.s101:接收课程编排请求;
36.本步骤旨在接收课程编排请求,在此对于如何接收该课程编排请求不作限定。还需要注意的是,也可以将执行课程编排的其他指令视为本实施例中的课程编排请求。例如在用户开始执行课程编排操作时,可以将具有标志性的操作执行时视为接收到课程编排请
求。
37.当然,课程编排请求中还可以包含其他信息,例如其可以包含对多种课程类型课程的编排需求,也可以包含课程更新等其他信息。
38.s102:确定所述课程编排请求中的课程类型;
39.在接收到课程编排请求后,本步骤需要确定课程编排请求中的课程类型。也即是说,该课程编排请求至少应当包含课程类型。
40.s103:若通用容器满足所述课程类型的配置需求,利用通用容器为每种课程类型配置相应的容器;
41.本步骤旨在配置课程类型相应的容器,本步骤默认隐含了对于通用容器配置需求的判断,即判断当前存在的通用容器是否满足该课程编排请求对应课程类型的需求。若满足,则基于该通用容器配置容器。
42.需要注意的是,通用容器可以包含多种,例如通用课程容器、通用考试容器和通用面授容器等待,以适应不同课程类型对应容器的创建需求。
43.在本步骤的基础上,在配置得到容器后,还可以为通用容器配置通用扩展点,通用扩展点用于扩充所述通用容器对应的课程类型。该扩展点可以通过类来表现,例如可以通过groovy类,也可为java类或其他类等待。扩展点可以实现课程的动态加载。例如某课程容器中挂载了课程s1、s2,当增加一个新类型的课s3时,在传统情况下需要停止服务逐个机器进行发布。现在可在不停服情况下通过动态添加或者修改课程容器包含的课程,从而将课程s3添加至该课程容器,实现课程容器的不停机升级。可见,通用扩展点能够实现课程的个性化扩展,以满足不同的业务场景。
44.具体动态加载过程可以包含如下步骤:
45.第一步、将包含容器的类文件(比如groovy或java)存入数据库或动态配置;
46.第二步、让类加载器加载文件到内存;
47.第三步、通过修改类文件,通过异步任务或手动执行,在不停机服务器的情况下实现升级。
48.此外,若通用容器无法满足所述课程类型的配置需求,还可以直接根据配置需求创建具体容器,并利用动态语言groovy配置具体容器的具体扩展点,该具体扩展点用于扩展所述具体容器包含的课程。
49.本实施例默认在执行本步骤前可以存在部分通用容器,也即是说,在执行本实施例或者本步骤前,可以事先创建部分通用容器。当然,该通用容器创建后可以保存,从而在需要创建该通用容器对应类型的容器时直接应用。则在新增类型课程时,若已经存在相应类型通用容器,则可以直接基于通用容器配置相应的容器,无需重复编写代码,避免了新增服务器的人力成本和物力成本,
50.s104:编排所述容器并组课,得到课程实例。
51.本步骤旨在编排课程,各容器中包含容器对应课程类型的若干课程,在编排时,可以根据编排课程类型和顺序实现不同逻辑的编程。作为本步骤的一种可行的实施逻辑,可以由用户实现配置课程的编排逻辑,从而在执行本步骤时按照编排逻辑组课。
52.本技术实施例在编排课程时,利用通用容器创建相对应课程类型的课程,从而基于容器进行编排,能够降低不同类型课程在编排时的相互影响,进而降低课程编排复杂度,
同时基于通用容器能够快速建立不同类型课程的容器,提高编排效率。
53.基于上述实施例,作为优选的实施例,还可以对课程进行升级,其具体过程可以如下:
54.接收到目标课程的升级请求时,对目标课程所属类型对应的容器进行升级,以便升级目标课程,并记录升级前后的版本号变化。
55.课程的升级可以包括课程名称的更新、课程内容的变化、课程时间的变化等等,同时记录升级前后课程的版本号变化。
56.基于上述实施例,作为优选的实施例,在为每种课程类型配置相应的容器之后,可以为容器或具体容器中的每种课程配置相应的统一状态,统一状态机用于记录各课程的学习进度,还可以基于每个课程的用户进行状态记录,例如记录容器的属性。容器可以包含通用属性和通用行为,通用属性包括未开始学习、学习中和已完成学习,通用行为包括开始学习、继续学习和重新学习。即通用属性为用户对课程的学习进度,而通用行为指当前课程的应用状态,均可以通过统一状态机记录并更新。如此可以横向比较课程对象,便于查询课程使用者的学习状态和学习轨迹。
57.还需要注意的是,不同类型的课程存在不同的状态,即每个类型的课程存在其各自对应的状态,下文为几种不同类型课程及其对应状态:
58.实践课程状态,包括:待分配基地、未开始、进行中、通过、未通过;
59.培训计划课程状态,包括:未开始、学习中、已完成;
60.面授课程状态,包括:待评定、未通过、已通过;
61.直播课程状态,包括:未开始、直播中、暂停中、已结束、禁播;
62.普通课程状态,包括:未开始、学习中、已完成。
63.则在记录状态时,可以针对该课程对应类型确定其包含的课程状态,再根据课程事前实际进度确定其实际状态。
64.另外,课程之间还可以存在包含关系,例如,培训计划课程可以包含实践课程和普通课程,则该课程的实际课程状态应参考其包含的课程的状态综合确定。
65.下面对本技术实施例提供的一种基于容器的课程编排系统进行介绍,下文描述的课程编排系统与上文描述的基于容器的课程编排方法可相互对应参照。
66.参见图2,图2为本技术实施例所提供的基于容器的课程编排系统结构示意图,本技术还提供一种基于容器的课程编排系统,包括:
67.请求接收模块,用于接收课程编排请求;
68.课程确定模块,用于确定所述课程编排请求中的课程类型;
69.容器配置模块,用于若通用容器满足所述课程类型的配置需求,利用通用容器为每种课程类型配置相应的容器;
70.课程编排模块,用于编排所述容器并组课,得到课程实例。
71.基于上述实施例,作为优选的实施例,还包括:
72.容器扩展模块,用于为所述通用容器配置通用扩展点,所述通用扩展点用于扩充所述通用容器对应的课程类型。
73.基于上述实施例,作为优选的实施例,还包括:
74.具体容器创建模块,用于创建具体容器,并利用动态语言groovy配置所述具体容
器的具体扩展点;所述具体扩展点用于扩展所述具体容器包含的课程。
75.基于上述实施例,作为优选的实施例,还包括:
76.状态机配置模块,用于为所述容器或所述具体容器中的每种课程配置相应的统一状态机;所述统一状态机用于记录各所述课程的学习进度。
77.基于上述实施例,作为优选的实施例,还包括:
78.升级模块,用于接收到目标课程的升级请求时,对所述目标课程所属类型对应的容器进行升级,以便升级所述目标课程,并记录升级前后的版本号变化。
79.本技术还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
80.本技术还提供了一种电子设备,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然所述电子设备还可以包括各种网络接口,电源等组件。
81.说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的系统而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
82.本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以对本技术进行若干改进和修饰,这些改进和修饰也落入本技术权利要求的保护范围内。
83.还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献