论文部分内容阅读
随着国家对青少年编程教育的日益重视,计算机编程已经逐步走入中小学课程中。早期Scratch编程语言作为中小学生学习编程的首选,受到了广泛的欢迎,然而随着人工智能的兴起和发展,Python语言越来越受到教育者的重视,甚至有部分地方将Python定为升学考试学科。BlockPy(BlockPython)作为以Python语言为基础的块状编程语言,在青少年编程教育中的重要性愈发突出,然而面向BlockPy编程语言的评价系统暂时还是一片空白,这为老师的教学工作带来了不便。通过对BlockPy作品进行分析和评测,可以及时发现学生在编码过程中的困难和不足,及时反馈给老师进行针对性教学,进而针对不同学生制定不同的学习方案和路线。因此,如何选用合适的分析方法和评判标准,如何准确、高效的对学生BlockPy作品进行评测,需要进行深入的探索和钻研。针对上述情况,本文在充分调研其他编程语言领域研究成果和评测工具的基础上,设计并实现了一个针对BlockPy学习平台的评价系统。评价系统从静态源码和动态过程数据两个方面对学生的作品进行评价。在静态评测方面,基于计算思维,制定了一个符合BlockPy语言特性的评价标准,并基于此利用抽象语法树(AST)对BlockPy作品的静态源码进行解析,最终完成对作品的静态评测;在动态评测方面,通过在平台进行数据点埋桩的方式记录学生创作作品的动态过程数据,进而对大量动态数据进行分析并构建动态评测工具,完成对学生作品的动态评测。最后在上述工作的基础上,设计并实现了面向BlockPy学习平台的评价系统。经过全面的测试,本文实现的静态评测工具和同类型工具相比,具有明显的优势,动态评测工具也是首次从动态过程数据角度对学生BlockPy作品进行分析评测。整个评价系统能够准确及时的为作品提供评测结果,具有较好的高可用性和鲁棒性,结果符合预期设计,能够为广大师生的学习使用提供保证。