代码在线测评系统web端开发文献综述

 2023-03-22 11:01:39


一、文献综述

(一)国内外研究现状

伴随着ACM和OI竞赛的发展,越来越多的高校开展了代码在线测评系统的研发工作,有了自己的代码在线测评网站。当然这些在线测评系统不仅可以用于竞赛开展前的练习和竞赛时的实时在线答题,还可以用于程序设计教学领域。其中国内使用率高且较为知名的网站包括LeetCode、北京大学的POJ、杭州电子科技大学的HDOJ,国外较为常用的平台包括Codeforces、UVA、SPOJ、俄罗斯萨拉托夫国立大学的在线判题系统等。以下是近年来国内外关于代码在线测评系统的研发的情况。

国内现状:

2016年蔡崇超在《基于Web的在线判题系统设计与实现》中提出,“测试流程:①访问数据库,取出等待测试的源代码;②对源代码进行编译,若编译出错,则将错误信息和测试结果写进数据库,测试完成。否则进行下一步;③利用系统本身提供的测试用例对已编译好的程序进行测试;④测试完成后,将结果和测试用例对应的答案进行比较,然后将测试结果写回数据库中。”可以看到系统后台对用户提交的代码进行评测的大致过程。

2018年舒新峰,张文,王梦楠在《基于Docker的分布式程序判定系统设计与实现》中指出“为防止学生代码影响到判定服务器的安全性,例如盗取数据资源或破坏文件系统,现有评测系统屏蔽了文件操作、多线程使用等重要的系统调用,不能很好的满足程序设计类课程的判定需要。”目前很多系统开发中所使用的技术还有一定的提升空间,此论文作者也实现了其中一种解决方法。

2020年刘新宇等人在《期末在线测评系统的设计与实现》中提到,“减轻教师的负担,同时提高工作的效率,改善学生的考试质量,学生可以在最短时间内得到考试结果的反馈,而且网上考试这种方式也更加合理与客观,对于推动现代教育的发展有着非常重要的意义。”可见教学可以与代码测评系统作更多的结合。

2020年孔钦,叶长青等人在《OJ平台在程序设计中的应用分析与实现》中指出“未来可在其基础上进一步添加竞赛比拼、积分激励等新功能,再与课程教学紧密结合,注重提升学生的实际动手能力,激发学生学习的主动性与创新性,锻炼其编程能力,提高学生学习效率。”可见,此类oj平台可以与教育教学有更加深刻的结合,激发学生对程序设计学习的兴趣。

国外现状:

2013年Caiza等人《Programming assignments automatic grading: review of tools and implementations》中指出:“缺乏统一的评分模式仍然是一个重要问题”,“一个评分指标界定方法是得到评分模型的第一步”。由此可见,不同的系统对于代码的测试评判标准是不一样的,除了和结果样例比对判断代码产生的结果是否正确之外,各个系统在编译标准等方面的不同会让初学者产生一些疑惑。

剩余内容已隐藏,您需要先支付 10元 才能查看该篇文章全部内容!立即支付

以上是毕业论文文献综述,课题毕业论文、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。