admin 管理员组

文章数量: 1086019


2024年3月6日发(作者:serializable是java中的一个类)

前沿视界高教学刊JournalofHigherEducation2021年6期以OJ系统和学科竞赛为核心的程序设计实践教学*刘勇,田凯,周晓琳,吴佳伟*(北京化工大学信息科学与技术学院,北京100029)摘要:通过分析各高校在线评测系统应用于实践教学的现状,结合北京化工大学在线评测系统应用实际,对九年来的计算机科学与技术专业的编程课程教学实践和程序设计类学科竞赛的培养情况进行数据分析和整理研讨。经验表明,文章分析的以在线评测系统为基础,以学科竞赛为目标的实践教学模式有利于培养优秀的计算机科学与技术专业学生。实践教学关键词:程序在线评测系统;学科竞赛;中图分类号院G640文献标志码院A文章编号院2096-000X渊2021冤06-0028-04(OJ)systemapplicationofpracticalteachinginotheruniversities,inthispaper,weanalyzethepractiastnineyears,wewidelyusedOJsysteminteachingpracticeofprogrammingcoursesandthetrainingprocessofcompetitionisbends:OnlineJudgeSystem;programmingcompetition;erienceshowsthatthepracticalteachingmodebasedonOJsystemandprogrammingAbstract:BasedontheanalysisofthecurrentOnlineJudge引言近年来,全国高校对于大学生实践能力的培养越来越重视,而对于计算机相关专业的学生来说,提高自己的动手编程能力也就是提高了实践能力。程序设计类课对于各程具有入门难,两极分化严重、实践性强等特点。大高校,计算机专业的竞赛具有参加人才难挑选,培养难度高等特点。所以,如何满足新时期教育发展的需求,如何提高实践教学的成果,如何培养具有更高水平的程序设计类竞赛人才,是高校教师亟待解决的问题。随着我国教育信息化研究的不断深入和进程不断加快,各大高校纷纷将现有的教育技术引入到实践教学中。为此,作者将北京化工大学在线评测系统应用到计算机科学和技术专业的实践教学中,对所收集的大量实践数据进行了合理统计和分析得出,使用新的基于在线评测系统的教学有助于激发学生的学习兴趣,提高学校和学生参加计算机类相关竞赛的积极性并获得优异的成绩。一尧在线评测系统应用现状(OnlineJudge,OJ)在线测评系统,起源于ACM国际大学生程序设计竞赛(ACMInternationalCollegiate[1]ProgrammingContest,ACMICPC)。经过ACM竞赛30测系统。其中国内著名的OJ系统包括:北京大学的达3000次;浙江大学的ZOJ,浙江大学通过ZOJ举办浙江大学计算机程序设计能力考试(PAT),PAT的成绩可此外杭以作为多家企业招聘和研究生复试的机试成绩。州电子科技大学的HDOJ、电子科技大学的UESTCOJ和华中科技大学的HustOJ都在程序竞赛领域有较高的知名度。国外知名的在线评测系统有西班牙Valladolid大学的OJ(UVA)、俄罗斯Ural立大学OnlineJudge(U原RAL)、Codeforces和atcoder等。近年来各大公司也使用POJ,该网站有强大的软硬件系统,每天代码提交次数高一些针对求职面试的在线评测系统,比如国内知名的牛这些评测系统,客网和计蒜客等。不仅广泛应用于教学、对学科竞赛人员的培训和求职面试中,还对外开放注册,为其他程序爱好者们提供题库和代码评测服务。二尧基于在线测评系统的实践教学目前,在线评测系统广泛应用在各大高校计算机科学和技术专业的教学和竞赛的培养中。在教学方面,各大高校将该系统直接应用于程序设计类课程的上机实验教学中[2]。任课教师根据程序设计类课程的实验内容和具体要求[3],合理布置实验任务,新增题目或者从题库中选择合适的题目供学生上机练习。学生在编写、调试完程序后,将程序提交给评测系统进多年的发展[4],各大高校纷纷开发了属于自己的在线评*基金项目院教育部2019年第二批产学合作协同育人项目野从算法竞赛到人工智能创意赛袁基于AIStudio平台建设人工智能课程和竞赛培训体系冶渊编号院2冤作者简介:刘勇(1984-),男,汉族,湖南常德人,博士,讲师,硕士研究生导师,研究方向:软件工程。(1991-)研究方向:高等教育本科人才培养。*通讯作者:吴佳伟,男,汉族,浙江海宁人,硕士,教育管理助理研究员,-28-

2021年6期高教学刊JournalofHigherEducation前沿视界行判断。评测系统会在后台进行编译,并结合测试输入样例得出运行结果,与测试输出样例进行比对,给出评判结果。教师可以通过系统在网上抽查学生作业,及时发现问题给出指导,该系统的使用大大减轻教师的工作保证了教学的连续性在一定程度上,提高了教学质量。在课程范围方面,该系统的应用主要集中在C/C++语言、Java语言、Python语言的教学上,对这几门语言的教学质量有很大提高。而对于其他计算机专业相关的课数据库原理等涉及较少[4]。在计算机类学科竞赛的培养中,各大高校使用在线评测系统选拔参加学科竞赛的学生,进行模拟比赛,提高竞技水平。三尧本校实例(一)北京化工大学在线评测系统我校基于开源的HustOJ系统部署了北京化工大学(OnlineJudgesystemofBUCT)在线评测系统,主要用校内周赛、月赛“、蓝于我校程序设计类课程的实践教学、桥杯”软件大赛的选拔和集训以及参加ACM竞赛的队员集训[5]。(BUCTOJ)北京化工大学在线测评系统使用php语言开发,后台数据库使用MySQL,采用B/S架构,主要系统模块包括系统维护和管理、题库管理、实时状态、排名、竞赛和作业、ACM竞赛专区、讨论版。校内访问网址系统主界面为图1。经过多年不断的丰富和完善,BUCTOJ已经积累算法了近5000道编程题目,题目类型涵盖了数据结构、Python语言程序设计、程序设计课程设计、ACM/ICPC入门以后需要多加练习的题目,有适合选拔学生竞赛的题目,有适合参加学科竞赛学生训练的题目等多种类型题目。BUCTOJ系统已经有超过70万份代码的提交,这压力。学生课后可以继续登录系统,完成未完成的实验,些数据都存储在数据库中,我们可以使用这些数据对学生的学习进度,实践水平进行合理的分析,专业性的进行培养。(二)OJ系统在我校的应用OJ系统已经在我校程序设计教学和学科竞赛中使计算机组成原理、用了九年时间,程,例如编译原理、算法分析和设计、在使用过程中,我们不断总结经验,积累方法,形成一整套基于在线评测系统的课程教学和学科竞赛培养方案。1.实时评测教学系统管理员在开学初将学生的信息导入OJ中,根据学号生成相应的账号。任课教师可以通过评测系统的状态显示功能,查看学生做题情况,对学生做题过程中遇到的共性问题给予针对性的讲解和及时指导,对排名靠前的同学可以进行重点培养为学科竞赛人员,对排名为适应不同层次学生的学习靠后的学生进行重点辅导。需求,教师可以根据学生的知识掌握情况,及时调整实合理验任务,进行题目的分级分类,从而达到有效反馈、调控、提高课堂教学效果的目的。2.更好的教学效能教师把例题和课后作业题目挂到在线评测系统上,间,学生通过在线评测系统按时间要求进行作业提交,提交通过的题目数系统会统计出每道题目的提交次数、量及所使用的编程语言,对本次作业的完成情况进行排有学生每道题目的做题情况,查看是否抄袭,记录总结学生遇到的问题,在课堂教学中进行针对性讲解。在线评测系统的使用,简化作业批改,使教师可以注重教育为,校外网址为http://39.106.31.26/,例题帮助学生进行熟悉练习,课后作业设置好起止时设计与分析、C/C++语言程序设计、Java语言程序设计、名,并可导出到Excel文件。教师可以方便地获取到所程序设计方法与实践[6]等几门课程的主要知识点;题目难度覆盖面也很广,有适合刚入门新手的题目,有适合图1BUCTOJ主界面-29-

前沿视界高教学刊JournalofHigherEducation教学及自身素质的提高,从而提高教学效能。学生提交作业后,系统会快速给出评判结果,及时得知作业完成情况,即可进行后续修改与再次提交,与传统收发作业既缩短了反馈周期,又能激发学生的学习潜能和学习热情。3.公平客观的考核评价机制5.学科竞赛2021年6期学校的ACM队的教师会对基于评测系统选拔出来的计算机学科竞赛的学生进行集中教学和管理,教师同用于队员的平时训练,严格控制他们的时间,提高效率。定期举行队员之间的竞赛,或者是让他们参与其他高校的比赛。制定并实行合理赏罚制度,帮助学校挑选最合适的学生去参加学科竞赛,提高学生水平,为学校获得优异的成绩[8]。四尧数据分析“蓝桥杯”(一)软件大赛获奖数据和代码提交数(2013年)“蓝桥杯”我校从第四届开始参加软件类图2对第四届(2013年)大赛,至今已经参加了七届,到第十届(2019年)我校参加“蓝桥杯”软件大赛的获奖情况进行统计。由图2可以看出我校在“蓝桥杯”软件大赛中获奖总数呈上升趋势,图中的水平线对应的为某一项的平均值,平均获奖数为36,这证明我校基于OJ的计我校在“蓝桥杯”算机学科竞赛培养有一定的成绩。软件大赛省赛在获奖数量也呈上升趋势由2013年的19项“蓝桥杯”增加到2019年的47项。软件大赛的规则是省我们可以赛一等奖选手获得直接进入全国总决赛资格。看出我校在全国总决赛的获奖情况有波动。与省赛相校师生对蓝桥杯的重视程度不如ACM/ICPC,没有投入某一更多的精力;某一届学生对编程的兴趣感的强弱;(部分省份在中学时就会进行编程届学生生源地的影响教育)。对我校在线评测系统上2013至2019年的代码提交数进行了统计如图3。经过对比图2和图3,我们发现“蓝桥杯”我校在软件大赛中获奖数量和当年学生在OJ的模式相比,这种方式科学运用了生物心理学的规律,样会录入新的题目或从已往的题库中选择合适的题目使用在线评测系统进行实验课考核,评判结果公正客观。学生通过使用在线评测系统,可实现对每次考核内容的系统化管理,发现当前课程学习的薄弱部分,主动弥补。每次考核都会给出系统排名,可使学生意识到学习差距,从而能对自身提出更高要求,调动学生学习积极性。此外,将该系统直接用于学生程序设计语言类课程的考试上,传统的试卷考试对于程序设计语言类课程有很大的局限性,对老师的批改、学生的创新都有很大的影响。我们可以使用该系统,进行上机考试,规定的时间内完成规定的题目。这一方法更加公平公正。提交通过比率评测系统会根据提交通过题目数量、给出总排名,从而鞭策落后的学生努力追赶,给名列前将ACM竞赛机茅的学生一些自信,激励他们继续坚持。如新生赛、月赛、周赛、校赛、女生赛,以庆祝某个节假日为主题的节日赛等。通过以上不同形式的激励,激发学生的学习动力,引导学生培养良好的学习习惯,形成积极向上的学习氛围,从而促进教学质量的提高[7]。并且可以通过这些比赛选拨优秀的学生进入到ACM队,为我校培养更多更优秀的竞赛型学生,为参加学科竞赛并获得高水平奖励打下基础。4.合理的激励机制制引入实践课教学中,每年定期开展程序设计类竞赛,比,我们会发现国赛的获奖受很多因素的影响,例如我图2“蓝桥杯”学科竞赛历年获奖情况-30-

2021年6期高教学刊JournalofHigherEducation前沿视界系统上提交代码的数量大致相符合,可能某一年会受到某位代课老师教学习惯(在教学中使用OJ多/少的情况),学校对于学生开课内容等原因的影响,会出现获奖的数量和当年学生在OJ系统上提交代码的数量不太相符的情况。总体来说,可以看出,代码提交的数量和获奖实数量成正相关。代码提交多的年份,获奖数量也越多。践证明,我们的OJ系统在教学中的使用更频繁,学生使用OJ课下练习的次数也在增加,这样有助于我们的学生提高编程动手能力,增加他们对于编程的兴趣,有助于我校培养高水平的计算机相关专业学生。从图4可以看到,山东,河北,山西,河南,福建等省我们调查发现由份的学生获奖人数获奖数量都比较多。于这几个省份对于中学编程教育更加重视,基础更好。建议学校在分配宿舍的时候可以根据这些统计信息进行合理分配,以一带多,相互促进,共同提高,从而达到培养更多高水平计算机专业人才的目的。五尧结束语经过九年教学实践证明,基于北京化工大学在线评测系统的教学实践研究,取得了良好的教学成果,为我校培养了一批具备编程能力和参加竞赛的学生,并在各但是不能过分种计算机学科竞赛中获得了优秀的成绩。依赖系统,教师的引导和监督作用不可忽视。如果缺乏教师的引导和监督,容易导致学生流于形式,影响学习。参考文献院模式的课程探究[J].计算机光盘软件与应用,2014,17(23):212+214.张建兵.以OnlineJudge为突破口的程序设张学辉,[2]范江波,史文静,施尔宁,等.基于OnlineJudge与ACM_ICPC[1]张赫尧,,计课程全过程学业评价改革实践[J].科教导刊(中旬刊)2019(09):96-97.何钦铭,等.高校学科竞赛评估:思路、方法[3]陆国栋,陈临强,图3代码提交统计(二)获奖人数对应生源地图4为我校在第四届到第十届(2013-2019)“蓝桥杯”软件大赛中获奖人数及其对应省份的分布情况,其“蓝中饼图所占面积越大表示我校在该省份生源中获得桥杯”软件大赛奖的数量越多。图中每个省份后面的数这其中受到我字表示我校在该省份生源中的获奖人数。校计算机专业学生生源地的影响,在几个获奖人数多的省份相对生源比较多。和探索[J].中国高教研究,2018(02):63-68+74.许南山.在线评测系统在程序设计类教学中[4]苗桂君,刘勇,的应用研究[J].计算机教育,2016(09):157-162.[J].现代计算机(专业版),2013(35):47-50+56.统设计[J].时代教育,2014(03):64-65.2019(07):142-145.[5]李博,孟成博.对HUSTOJ在线评测系统的若干优化与创新[6]黄宏博援基于ACM竞赛平台模式的程序设计题自动判题系[7]王桂平.高校学科竞赛培训模式探索与实践[J].计算机教育,图4我校在历年“蓝桥杯”软件大赛中获奖队员省份分布情况-31-


本文标签: 学生 系统 竞赛 评测 教学