标签归档:onlinejudge

支持Moodle 2.0的在线评测2.0开始公开测试了

项目主页、下载地址、安装说明等都在:https://github.com/hit-moodle/moodle-local_onlinejudge

它并不是1.x的简单升级,而是完全的redesign,和近乎完全的recode。主要改进:

  1. 架构上分成三个部分:judgelib、judge和client。
    1. judgelib是一个函数库,以local插件的形式安装到moodle中,对外提供评测接口
    2. judge是judgelib的子插件,可以叫做评测引擎插件。现在支持sandbox和ideone.com两种引擎,还可以扩展到更多
    3. client是和最终用户交互的插件,它对用户提供界面,对内调用judgelib做评测。现在只有一个作业类型插件,还可以扩展更多,比如测验插件、活动插件等等
  2. 作业插件支持多文件编程(仅限sandbox)
  3. 管理员可以设置一些全局设置
  4. 教师可以设定自己的ideone.com账号,避免了免费账号判题次数的问题,还能通过ideone.com管理学生的程序
  5. 可以一次只重新评判一名学生

暂时还未完成的1.x的功能包括:

  1. 显示学生程序的输出给教师。这个功能将改进成显示更详细的程序运行信息
  2. 代码加亮预览。因为moodle 2.0的变化,这个实现起来稍微有些麻烦,正在寻找最好的解决办法

1.x用户将moodle升级到2.0后,可以直接升级online judge 2.0,原有作业都会被继承保留。

欢迎测试!发现任何问题,有任何意见和建议,都请在项目主页的issues中提出。多谢!

另外,后续版本的发布可能不会再通过博客等媒体宣布,请在github上watch本项目,以便随时了解最新动态。

再另外:

  1. 热点提问支持moodle 2.0的版本早已经在了,而且可以算是稳定版,欢迎使用
  2. 支持Moodle 2.0的MOSS反抄袭将是接下来的开发焦点。现在的代码还很惨不忍睹,很不建议试用,不信可以在github上看看

最后:诚征志愿者帮我们解决各种issue,详见《志愿者指南