一种程序设计实践课程教学管理平台制造技术

技术编号:21686362 阅读:42 留言:0更新日期:2019-07-24 14:44
本发明专利技术提出了互联网教育领域内的一种程序设计实践课程教学管理平台,包括:登录模块,用以根据用户提供的账号信息进行登录账号、注销账号、注册账号和修改密码;题库管理模块,用以根据题目信息对题库进行增加题目、题目列表、修改题目、删除题目;班级管理模块,用以根据班级情况和教学需求进行添加班级、更新班级信息、下载班级打包信息、班级内消息推送;分组管理模块,用以根据小组情况进行成为组长、加入小组、移除组员、选择题目、重新选择题目;内容管理模块,用以根据小组需求进行提交代码、上传课程报告、下载代码、下载课程报告、查看代码文件,本发明专利技术保证了全班信息的同步,减轻了教师用户管理文件的负担,可用于互联网教育中。

A Teaching Management Platform of Programming Practice Course

【技术实现步骤摘要】
一种程序设计实践课程教学管理平台
本专利技术涉及一种教学管理平台,具体的说是一种一种实践课程教学管理平台,属于互联网教育

技术介绍
程序设计课程是国内众多高等院校在计算机编程技术实践领域的重要课程之一,任课教师众多,涉及到的学生和专业也非常多,在课程实施过程中,包含了很多可以利用信息技术进行效率提升的环节。程序设计实践课程的实施步骤一般为:教师事先准备可供学生选择的题目、学生按照分组要求自由分组并且讨论确定选择的题目、教师确定学生选择的题目、学生根据题目要求编写代码、教师检查学生的进度、学生撰写课程报告、教师根据代码完成情况和课程报告打分。传统教学过程中存在以下问题,文件交换环节可能导致计算机病毒的传播,不同小组题目选择容易导致冲突,教师无法实时了解学生完成情况。
技术实现思路
本专利技术克服现有技术的不足而提供一种程序设计实践课程教学管理平台,保证了全班信息的同步,减轻了教师用户管理文件的负担。本专利技术提供一种程序设计实践课程教学管理平台,其特征在于,包括:登录模块,用以根据用户提供的账号信息进行登录账号、注销账号、注册账号和修改密码;题库管理模块,用以根据题目信息对题库进行增加题目、题目列表、修改题目、删除题目;班级管理模块,用以根据班级情况和教学需求进行添加班级、更新班级信息、下载班级打包信息、班级内消息推送;分组管理模块,用以根据小组情况进行成为组长、加入小组、移除组员、选择题目、重新选择题目;内容管理模块,用以根据小组需求进行提交代码、上传课程报告、下载代码、下载课程报告、查看代码文件。作为本专利技术的进一步限定,所述登录模块通过不同用户的账号可以自动分辨用户身份,还可以通过网页端Cookie让不过期的访问不需要再次输入密码,登录成功后还会根据用户身份显示不同的功能入口。作为本专利技术的进一步限定,所述题库管理模块在添加修改题目内容时会对题目的相关信息进行数据完整性检查。作为本专利技术的进一步限定,所述班级管理模块中消息推送基于WebSocket发送相关命令字来实现。作为本专利技术的进一步限定,所述分组管理模块中教师可以自定义每组的最多人数。作为本专利技术的进一步限定,所述内容管理模块中使用了自定义函数来生成符合HTTP协议的UTF-8字符编码字符串。本专利技术采用以上技术方案与现有技术相比,具有以下技术效果:通过使用本专利技术使得用户可以在第一时间获取有关班级的最新数据,保证了全班信息的同步;将原本通过拷贝文件的过程转变为上传文件到系统,系统可以永久保存相关文件,减轻了教师用户管理文件的负担;通过将程序设计课程的传统实施流程转变为信息化的操作流程可以更加方便师生,老师也可以更好的掌握班级的教学活动最新动态。本专利技术可用于课程教学中。附图说明图1为专利技术结构示意图。图2为本专利技术中用户登录界面。图3为本专利技术中后台账户注册界面。图4为本专利技术中添加题目界面。图5为本专利技术中填写字段提示。图6为本专利技术中题目列表界面。图7为本专利技术中添加班级界面。图8为本专利技术中贡献度表格。图9为本专利技术中班级消息推送界面。图10为本专利技术中建立小组组长界面。图11为本专利技术中建立小组学生界面。图12为本专利技术中提交代码界面。具体实施方式下面结合附图对本专利技术的技术方案做进一步的详细说明:如图1所示,本专利技术为一种程序设计实践课程教学管理平台,包括登录模块,题库管理模块,班级管理模块,分组管理模块,内容管理模块。登录模块的用户使用账户登录过程、注销过程以及注册过程具体如下。登录过程如图2所示,当用户提交登录信息后,服务器端程序通过调用Django内置函数django.contrib.auth.authenticate(username=email,password=password)实现账户名和密码的验证,验证成功后Django将该请求的执行结果发送至浏览器,浏览器将会为该执行结果创建一个名为sessionid的Cookie;之后,浏览器发送带有Cookie的网页请求给服务器端时,服务器端将会检查接收到的Cookie值,如果接收到的Cookie值有效,则用户的访问不需要再输入密码。对于账户注销操作,在用户发出注销请求后,服务器端程序通过调用Django的内置函数django.contrib.auth.logout(request),使得该用户会话中的名为sessionid的Cookie在后台过期,从而实现了用户的安全注销。对于账户注册操作,如图3所示,通过Django的manage.py脚本中的createsuperuer命令,接收用户输入的邮箱、用户名和密码,创建一个具有系统最高权限的管理员账户。题库管理模块的增加题目、题目列表、修改题目和删除题目具体如下。对于增加题目操作,如图4所示,在教师点击保存题目按钮时,浏览器将包含所填题目信息的请求通过Urls中的正则匹配对Views中的处理函数进行查找;处理函数通过Django的Form类定义成员名,与前端页面中表单标签的name属性进行对应,以检查用户的提交的所有信息是否正确,其次通过Form.is_valid()函数判断用户提交的表单是否合法;若表单判断为合法,则调用函数ShejiAddForm.save(user=request.user)进行题目的存储;以上步骤仅存储了题目在数据库中的内容,题目的描述文档则被写入到指定目录;为了解决文件以相同名称再次出现导致旧文件被覆盖的问题,在文件系统中存储的描述文档,统一使用题目在数据库中的id命名,以此避免同名文件被覆盖;在题目保存成功后,通过利用redirect(reverse(“sheji_detail”,args=[problem.problem_id])将当前页面重定向到题目列表页面;若点击添加题目按钮时题目内容中存在未输入项,如图5所示,前端页面通过设置的HTML5中<input>标签的required属性,弹出请填写此字段的提示,使得字段必须在提交之前被填写。对于题目列表功能,界面如图6所示,题目列表前端页面使用bootstrap-table实现;首先根据GET请求中的表单元素获取如偏移量offset、限制数量limit和题目类别category等元素;其次通过将程序设计题目对应的Model类ShejiProblem根据题目类别过滤,依照偏移量和限制数量获取查找到所需要的题目列表;之后将单个题目信息存储为一个字典,字典的key为bootstrap-table中设置的data-field的值,value为相应的信息;该字典具有两个key,第一个是rows,为所有题目信息构成的列表,第二个是total,对应所有题目记录的数量;将该字典通过returnHttpResponse(json.dumps(json_data))返回给前端;bootstrap-table在对数据进行解析后进行显示。通过设置data-formatter实现最后名为“操作”的列,bootstrap-table通过调用editFormatter(value)函数生成最后一列的内容,value传入的值为题目的id,循环拼接每一个按钮对应的url,用户在点击后会分别跳转到编辑题目页面和查看题目页面。对于修改题目功能,通过设置Form的initial参数实现在编辑页面中显示原本题目本文档来自技高网...

【技术保护点】
1.一种程序设计实践课程教学管理平台,其特征在于,包括:登录模块,用以根据用户提供的账号信息进行登录账号、注销账号、注册账号和修改密码;题库管理模块,用以根据题目信息对题库进行增加题目、题目列表、修改题目、删除题目;班级管理模块,用以根据班级情况和教学需求进行添加班级、更新班级信息、下载班级打包信息、班级内消息推送;分组管理模块,用以根据小组情况进行成为组长、加入小组、移除组员、选择题目、重新选择题目;内容管理模块,用以根据小组需求进行提交代码、上传课程报告、下载代码、下载课程报告、查看代码文件。

【技术特征摘要】
1.一种程序设计实践课程教学管理平台,其特征在于,包括:登录模块,用以根据用户提供的账号信息进行登录账号、注销账号、注册账号和修改密码;题库管理模块,用以根据题目信息对题库进行增加题目、题目列表、修改题目、删除题目;班级管理模块,用以根据班级情况和教学需求进行添加班级、更新班级信息、下载班级打包信息、班级内消息推送;分组管理模块,用以根据小组情况进行成为组长、加入小组、移除组员、选择题目、重新选择题目;内容管理模块,用以根据小组需求进行提交代码、上传课程报告、下载代码、下载课程报告、查看代码文件。2.根据权利要求1所述的一种程序设计实践课程教学管理平台,其特征在于,所述登录模块通过不同用户的账号可以自动分辨用户身份,还可以通过网页端Co...

【专利技术属性】
技术研发人员:薛景孙元张柯
申请(专利权)人:南京邮电大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1