APP下载

面向计算机公共课的思政资源平台设计与开发

2023-02-27贾美娟邵国强

智能计算机与应用 2023年2期
关键词:框架思政资源

李 欣, 刘 春, 贾美娟, 邵国强

(大庆师范学院 计算机科学与信息技术学院, 黑龙江 大庆 163712)

0 引 言

近年来,课程思政领域的教学研究已成为关注热点,高校教师也积极的将各种思政元素融入到计算机公共课,充分发挥课程育人功能。各高校在思政领域的研究和实践均取得了一定成就,但对课程思政资源库的建设相对较少。一些高校建设了自己的思政资源库,贺江[1]以食品微生物学课程为例,对课程思政素材库的具体内容进行了介绍,并阐述了其应用方法。刘艳艳等人[2]构建课程思政教学案例库,将其作为“医学专业课程思政教学资源库”中的重要模块。其中主要包含主题案例库、专业案例库及课程案例库等子库。吕东峰等人[3]通过文献资料分析和实地考察唐山地区优秀红色文化,研究建立地方红色文化课程思政素材库。辛朝军等人[4]从“爱军精武、矢志航天、科学思辨”3个思政维度,探索课程思政案例库建设,实现了思政在课堂教学中的有效嵌入与关联固化。

目前,虽然思政资源平台研究已取得了一定的成果但仍存在如下问题:

(1)部分资源平台属于商业性质网站,不利于高校对思政课程建设与管理。

(2)有些平台功能有限,仅适合展示典型案例。

(3)思政资源库基于一般的文档文件或电子表格管理,信息化程度较低。

因此,设计并实现一个面向计算机公共课的思政资源平台具有一定的现实意义和应用价值。

1 开发思政资源平台技术路线

随着研发人员的不断探索,新的Web开发技术不断被发现并被应用。新框架、新理念和新模式使得Web设计更加容易,开发效率得到不断提高。在以往的 Web项目中,大多数开发人员既负责前端,又负责后端。如今,项目开发人员逐渐将前后端的界限划分的越来越明确,前后端分离模式已成为互联网项目开发的业界标准和使用方式。

1.1 基于MVVM架构的前后端分离模式

Arcos-Medina G等人[5]对软件架构设计模式(MVC)与“模型-视图-视图模型”模式(Model-View-ViewModel,MVVM)进行了对比实验。结果表明: MVVM 模式比MVC 模式在性能和生产力方面表现更为优秀。在思政资源平台开发过程中,项目的主要参与者为高校教师和在校计算机专业学生。考虑到二者能投入到项目的时间精力和所具备专业技术能力,项目采用MVVM架构模式进行设计。该设计模式非常适合分离GUI前端开发和后端业务逻辑,可极大的提高开发效率,方便项目组根据各年级学生专业知识技术储备情况分配业务。平台基于前后端分离模式的开发技术与架构如图1所示。

1.2 前端开发技术

目前,前端开发技术较多,在给开发者带来丰富的选择同时,也提高了开发的复杂性。为了减轻开发者的负担,一系列的库组件和框架技术被设计使用。如:Vue 框架[6]、Bootstrap框架[7]及Layui框架等。在计算机公共课思政资源平台的前端开发中,项目组采用了“Vue + Boostrap”组合方式。其中Vue作为当前十分流行的前端框架技术,除了性能表现优异之外,还可以绑定MVVM 模式中的Model模型与View视图,将数据变换的操作变得更加简易,同时也减少了逻辑代码量。开发中也使用了“饿了吗”开发的桌面端UI组件库Element-UI。该组件库的API方法、属性等封装的均较为完善,完全支持Vue.js 2.0,非常适合Vue项目开发。Bootstrap框架是当前流行前端开发框架,主要用于开发响应式布局、移动设备优先的 Web 项目。该框架容易掌握,使用便捷,通常单独使用。通过研究发现:将Bootstrap框架与Vue框架组合运用,前者优雅的样式和丰富的组件使得页面开发变得更美观和容易,从而提升开发效率与效果,极大地减轻了前端开发人员的编程负担,同时可以达到理想的前端界面效果。

图1 基于前后端分离模式的开发架构图

1.3 后端开发技术

为了符合MVVC 开发模式,项目后端开发选择了SpringBoot框架。SpringBoot框架作为 Spring家族成员之一,可自动配置Spring应用,非常适合个体的微服务系统性开发。该框架的Spring生态系统不仅容易集成,同时又解决了Spring框架的弊端,从整体上简化了编码、配置、部署与监控,因此在后端开发中颇具优势[8]。在后端开发中,将后端划分为数据访问层、业务逻辑层和控制层3个层次,主要负责接收并处理前端的请求、数据库交互以及返回前端所需的数据。

1.4 安全验证技术

思政资源平台的访问涉及到不同身份的用户,因此需要实现用户对系统、角色、功能的管理与配置。在平台开发中,利用Apache Shiro安全框架技术执行身份验证、授权、密码和会话管理。在前端的权限控制方面,前端某个按钮的隐藏或显示可以通过Shiro的页面标签来控制。当用户拥有该权限时,就显示该按钮,否则隐藏。在后端的权限控制方面:后端的接口可以通过Shiro的注解来控制是否允许访问。当用户拥有该权限时,就允许访问,否则不允许访问。为了实现平台的用户权限管理,通过核心依赖、Shiro核心配置、域对象配置、核心工具类、自定义权限异常提示等,将Shiro安全框架技术整合到SpringBoot框架中。授权策略使用易文康等人[9]提出的基于 Shiro 标签式授权和注解式授权的权限访问控制算法。

2 平台需求分析与功能设计

2.1 需求分析

通过文献查阅,项目组总结分析了一些与课程思政平台功能需求相关的信息。在实际调研基础上,将思政资源平台的角色需求分为3种:系统管理员、教务管理员和普通教师用户。系统管理员在平台中权限级别最高,主要管理其他角色的人事信息及教务新闻和公告,可以对其他人员信息进行增、删、改、查等操作。教务管理人员主要完成对思政素材审核、资源分类和课程管理。教师用户在登录平台后,可以录入和选择思政素材,设计和管理思政案例,建立、修改或删除自己的课程。平台的主要功能需求见表1。

表1 平台主要功能需求

2.2 基于MVVM模式的微服务架构设计

在完成功能需求之后,需要对微服务进行建模。该过程将功能需求分解为与目标匹配的微服务。平台中的主要微服务见表2。

表2 微服务需求

2.3 平台整体框架设计

根据需求分析,平台模块设计如图2所示。教师思政部分为主要功能模块,教师用户依据模块功能设定,从素材库里选择各种类型的思政素材,或者自行创建素材提交审核,然后根据确定的思政素材设计思政案例。教师用户具备创建课程功能,并在课程设计中将选择自己或他人的思政案例。当然,教师用户也可以选择是否分享自己的思政资源,同时也要将思政素材、案例及课程提交教务管理员审批。教务管理模块主要负责审核思政素材及课程,避免不合时宜的资源发布网上,造成不良影响。

图2 思政资源平台模块设计

2.4 数据库设计

根据图2中功能模块的业务需求,整理了各功能涉及的数据子集和数据交集。以第三范式(3NF)为数据库设计原则,建立了管理员表、教务管理人员表、教师用户表、新闻报表、公告表、思政素材表、思政案例表、思政课程表、角色表、权限表和权限角色关系表等。如图3所示,对于每个表中的主键,均采用Integer类型,其余字段一般采用Character类型。新闻发布、新闻内容、发布时间等个别字段根据实际需求选择数据类型。为了更直观的展示,图4展示了整体的E-R图设计效果。

图4 思政资源平台E-R图设计

3 部署运行与测试分析

3.1 部署运行

项目部署由天然支持Spring Boot框架的Spring Cloud 微服务架构[10]和高性能的反向代理服务器Nginx[11]实现。Spring Cloud作为一套微服务治理的框架,其质量、稳定性、持续性都可以得到保证。Nginx作为反向代理服务器,代理内部网关服务,通过Nginx自带的负载均衡算法实现客户端请求的代理转发、负载均衡等功能。该项目在Linux系统中安装Nginx服务器。安装好以后,在Nginx下创建一个文件夹,将Vue下dist文件夹中所有文件复制到新创建的文件夹里;通过nginx.conf文件完成Nginx配置,然后到Nginx目录下的sbin文件中启动Nginx服务器。最后,使用 SwitchHosts 工具处理跨域问题。主页运行效果如图5所示。在后台管理界面对各种微服务进行实现,例如思政课程管理功能如图6所示。

图5 主页运行效果图

图6 后台管理界面——思政课程管理功能

3.2 测试分析

平台开发完成后,进行了单元测试和集成测试。由于该项目应用程序没有使用任何复杂的算法,且粒度细节较低,因此两种测试均采用黑盒测试方法。黑盒测试用于检查功能性程序是否正确运行,而并不需要知道程序的内部情况[12],测试通过从功能性应用程序中创建一个测试输入和输出的形式来完成。测试可以在不使用算法或低粒度级别的应用程序上进行,因此不需要花费太多时间。

为了验证计算机公共课的思政资源平台基于微服务设计架构的优势,分别从调用延时和提交延时两方面比较微服务平均延时和单体式平均延时,见表3、表4。实验表明,基于微服务设计的系统在一小时内调用接口的平均延时和提交时延远低于单体式架构,从而在响应速度上得到了明显的提升。

表3 调用延迟对比(毫秒)

表4 提交延迟对比(毫秒)

4 结束语

自课程思政开始融入教学设计以来,一直受到高等教育关注。为了方便课程的设计与管理,本文设计并实现了一个基于MVVM模式的思政资源平台。开发中使用的“Vue + SpringBoot”组合实现了前后端分离的项目开发流程和部署。作为一款轻量级框架,Vue非常方便对数据进行双向绑定,SpringBoot则简化了项目搭建,因此项目整体开发效率很高。该平台面向计算机公共课程设计,可以很好的满足教师思政教学需求。但该平台目前仅满足计算机基础、办公自动化、C++程序设计语言等几门计算机公共课程教学设计,后续研究将进一步丰富平台的功能与扩充其支持的科目。

猜你喜欢

框架思政资源
思政课只不过是一门“副课”?
基础教育资源展示
框架
关于国企党建与思政宣传有效结合的探讨
广义框架的不相交性
一样的资源,不一样的收获
思政课“需求侧”
思政课“进化”——西安交大:思政课是门艺术
资源回收
资源再生 欢迎订阅