跳到主要内容
10.1145/3587102.3588840高级会议文章/章节视图摘要出版物页面国际贸易委员会会议记录会议集合
研究论文

学生代码重构错误概念

出版:2023年6月30日出版历史

摘要

教学生开发高质量的代码很重要。重构(Refactoring)是一种提高代码质量的常用技术,它将程序重写为具有更好质量的语义等价程序。因此,对于学生来说,学习重构是非常重要的,即使是对于他们作为初学者编写的较小的程序也是如此。然而,学生在重构程序时会出错。其中一些错误经常出现,可能是由于他们的误解造成的。在本文中,我们调查了常见的学生代码重构误解。我们通过分析包含学生在辅导系统中进行重构练习的程序快照的日志数据来实现这一点。我们手动检查从正确的程序状态到错误状态的所有转换。然后,我们使用扎根理论来识别和分类学生在重构程序时可能产生的误解。因此,这项工作(1)定义了重构误解的概念,(2)提供了一个包含25个此类误解的初始列表,以及一个附带完整详细信息的网站。

工具书类

  1. 维姬·L·阿尔姆斯特鲁姆。1996.用数学逻辑调查学生的困难。《正式教学方法》(1996年)。谷歌学者谷歌学者
  2. Jecton Tocho Anyango和Hussein Suleman。2018年,肯尼亚和南非的编程教学:有什么困难,它是否具有普遍性?。在科里呼叫。谷歌学者谷歌学者
  3. 肯特·贝克和马丁·福勒。2018年,代码中有臭味。在重构中:改进现有代码的设计。第3章。谷歌学者谷歌学者
  4. 阿纳斯塔西亚·比里略(Anastasiia Birillo)、伊利亚·弗拉索夫(Ilya Vlasov。2022.Hyperstyle:评估编程作业解决方案的代码质量的工具。在SIGCSE中。谷歌学者谷歌学者数字图书馆数字图书馆
  5. 尤尔根·伯斯特勒、哈拉尔德·施特勒、丹尼尔·托尔、杰尔·范·阿塞马、罗德里戈·杜兰、萨拉·胡珊吉、约翰·杰林、海克·基宁、卡斯滕·克莱纳和邦妮·麦凯拉。2018年,“我看到它时就知道了”,对代码质量的看法:ITiCSE’17工作组报告。在ITiCSE中。谷歌学者谷歌学者
  6. Dennis M Breuker、Jan Derriks和Jacob Brunekreef。2011.测量学生代码的静态质量。在ITiCSE中。谷歌学者谷歌学者
  7. Neil CC Brown和Amjad Altadmri,2017年。新手Java编程错误:大规模数据与教育者的信念。《计算机教育汇刊》(2017)。谷歌学者谷歌学者数字图书馆数字图书馆
  8. 尤利亚·切伦科娃(Yuliya Cherenkova)、丹尼尔·津加罗(Daniel Zingaro)和安德鲁·彼得森(Andrew Petersen)。2014.在大型问题数据集中确定具有挑战性的CS1概念。在SIGCSE中。谷歌学者谷歌学者
  9. 卢卡·乔迪尼(Luca Chiodini)、伊戈尔·莫雷诺·桑托斯(Igor Moreno Santos)、安德烈亚·加利达比诺(Andrea Gallidabino)、安亚·塔弗利奥维奇(Anya Tafliovich)、安德烈·L·桑托什(AndréL Santos。2021.精心策划的编程语言误解清单。在ITiCSE中。谷歌学者谷歌学者
  10. 罗汉·罗伊·乔杜里(Rohan Roy Choudhury)、尹和正(Hezheng Yin)和阿曼多·福克斯(Armando Fox)。2016.编码风格的缩放驱动自动提示生成。在ITS中。谷歌学者谷歌学者
  11. 朱塞佩·德鲁沃、伊万·坦佩罗、安德鲁·卢克斯顿-雷利、杰拉德·B·罗和纳赛尔·贾卡曼。2018.通过分析学生代码了解语义风格。在ACE中。谷歌学者谷歌学者
  12. 斯蒂芬·爱德华兹(Stephen H Edwards)、尼舍尔·坎德鲁(Nischel Kandru)和穆昆德·拉贾戈帕尔(Mukund BM Rajagopal)。2017.调查学生Java程序中的静态分析错误。在ICER中。谷歌学者谷歌学者
  13. 汤姆?Effenberger和Radek Pelánek。2022.介绍性编程主题中的代码质量缺陷。在SIGCSE中。谷歌学者谷歌学者
  14. 马丁·福勒。2018.重构:改进现有代码的设计。谷歌学者谷歌学者
  15. 卢克·古苏库玛(Luke Gusukuma)、奥斯汀·科里·巴特(Austin Cory Bart)、丹尼斯·卡弗拉(Dennis Kafura)和杰里米·恩斯特(Jeremy Ernst)。2018.错误概念驱动的反馈:实验研究结果。在ICER中。谷歌学者谷歌学者
  16. 保罗·理查德·哈尔莫斯。1960年,天真集理论。范·诺斯特兰德。谷歌学者谷歌学者
  17. 杰弗里·赫尔曼(Geoffrey L Herman)、迈克尔·C·路易(Michael C Loui)、丽莎·卡奇马奇克(Lisa Kaczmarczyk)和克雷格·齐勒斯(Craig Zilles)。2012.描述学生在布尔逻辑中遇到困难的原因和原因。《计算机教育学报》(2012年)。谷歌学者谷歌学者
  18. 玛丽亚·赫里斯托娃(Maria Hristova)、安娜亚·米斯拉(Ananya Misra)、梅根·拉特(Megan Rutter)和丽贝卡·梅库里(Rebecca Mercuri),2003年。识别和纠正初级计算机科学学生的Java编程错误。SIGCSE(2003)。谷歌学者谷歌学者
  19. 克里斯托弗·洪多森(Christopher Hundhausen)、阿努卡拉蒂·阿格拉瓦尔(Anukrati Agrawal)、达娜·费尔布罗特(Dana Fairbrother)和迈克尔·特雷维桑(Michael Trevisan)。2009年,将教学规范审查纳入CS 1课程:一项实证研究。SIGCSE(2009)。谷歌学者谷歌学者数字图书馆数字图书馆
  20. 克鲁斯·伊祖(Cruz Izu)、保罗·丹尼(Paul Denny)和赛义诺·罗伊(Sayoni Roy)。2022.支持新手重构条件语句的资源。在ITiCSE中。谷歌学者谷歌学者
  21. 伯纳德·詹森。2006.搜索日志分析:它是什么,已经做了什么,如何做。图书情报学研究(2006)。谷歌学者谷歌学者
  22. Hieke Keuing、Bastiaan Heeren和Johan Jeuring,2017年。学生课程中的代码质量问题。在ITiCSE中。谷歌学者谷歌学者
  23. Hieke Keuing、Bastiaan Heeren和Johan Jeuring,2020年。编程导师中的学生重构行为。在科里呼叫。谷歌学者谷歌学者
  24. 海克·基宁(Hieke Keuining)、巴斯蒂安·海伦(Bastiaan Heeren)和约翰·杰林(Johan Jeuring),2021年。学习代码重构的辅导系统。SIGCSE。谷歌学者谷歌学者
  25. 戴安娜·柯克、泰恩·克劳、安德鲁·卢克斯顿-雷利和伊万·坦佩罗。2020年。关于确保学习代码质量。在ACE中。谷歌学者谷歌学者
  26. Essi Lahtinen、Kirsti Ala-Mutka和Hannu-Matti Järvinen。2005年,一项关于新手程序员困难的研究。SIGCSE(2005)。谷歌学者谷歌学者
  27. 安德鲁·卢克斯顿-雷利、保罗·丹尼、戴安娜·柯克、伊万·坦佩罗和赛扬·余。2013.关于正确学生解决方案之间的差异。在ITiCSE中。谷歌学者谷歌学者
  28. 史蒂夫·麦康奈尔(Steve McConnell)。2004。代码完成。谷歌学者谷歌学者
  29. Ioana T Mow公司。2008年。计算机编程新手教学中的问题和困难。在教学技术、电子学习、电子评估和教育的创新技术方面。谷歌学者谷歌学者
  30. 塞巴斯蒂安·C·米勒和托马斯·弗里茨。2016.使用(生物)指标在线预测代码质量。在ICSE中。谷歌学者谷歌学者
  31. 钱益洲和詹姆斯·雷曼。2017年,学生在入门编程中的误解和其他困难:文献综述。《计算机教育学报》(2017年)。谷歌学者谷歌学者
  32. 蒂穆·西尔基阿(Teemu Sirkiä)和朱哈·索尔瓦(Juha Sorva)。2012.探索编程误解:分析学生在可视化程序模拟练习中的错误。在科里呼叫。谷歌学者谷歌学者
  33. 约翰·史密斯三世(John P Smith III)、安德烈亚·迪塞萨(Andrea A DiSessa)和杰里米·罗斯切尔(Jeremy Roschelle)。1994.重新认识误解:转型期知识的建构主义分析。《学习科学杂志》(1994年)。谷歌学者谷歌学者
  34. 朱哈·索瓦。2013.概念机器和入门编程教育。《计算机教育学报》(2013年)。谷歌学者谷歌学者
  35. Martijn Stegeman、Erik Barendsen和Sjaak Smetsers。2016.为编程课程中的代码质量设计反馈量规。在科里呼叫。谷歌学者谷歌学者
  36. 安塞尔·施特劳斯和朱丽叶·科尔宾,1990年。定性研究基础。谷歌学者谷歌学者
  37. 利奥·C·乌雷尔二世和查尔斯·华莱士。2019.早期编程反模式的自动批判。在SIGCSE中。谷歌学者谷歌学者
  38. 库尔特·范利恩(Kurt VanLehn)。1982.缺陷还不够:对程序技能中的缺陷、僵局和修复进行实证研究。《数学行为杂志》(1982)。谷歌学者谷歌学者
  39. Eliane S Wiese、Anna N Rafferty、Daniel M Kopta和Jackulyn M Anderson。2019.复制新手在编码风格上的挣扎。在ICPC中。谷歌学者谷歌学者
  40. Eliane S Wiese、Michael Yen、Antares Chen、Lucas A Santos和Armando Fox。2017.教学生识别并实施良好的编码风格。单位:L@S。谷歌学者谷歌学者

索引术语

  1. 学生代码重构错误概念

    建议

    评论

    登录选项

    检查您是否可以通过登录凭据或您的机构访问本文。

    登录

    完全访问权限

    • 发布于

      封面图片ACM会议
      ITiCSE 2023:2023年计算机科学教育创新与技术会议记录
      2023年6月
      694页
      国际标准图书编号:9798400701382
      内政部:10.1145/3587102

      版权所有©2023 ACM

      如果复制品不是为了盈利或商业利益而制作或分发的,并且复制品的第一页载有本通知和完整引文,则允许免费制作本作品的全部或部分数字或硬拷贝以供个人或课堂使用。必须尊重作者以外的其他人对本作品组成部分的版权。允许用信用证进行摘要。要以其他方式复制或重新发布,在服务器上发布或重新发布到列表,需要事先获得特定许可和/或付费。从请求权限[电子邮件保护].

      出版商

      计算机协会

      美国纽约州纽约市

      出版历史

      • 出版:2023年6月30日

      权限

      请求有关此文章的权限。

      请求权限

      检查更新

      限定符

      • 研究论文

      接受率

      总体验收率552属于1,613提交文件,34%

      即将召开的会议

      ITiCSE 2024年
      计算机科学教育中的创新与技术
      2024年7月8日至10日
      米兰,意大利

    PDF格式

    以PDF文件查看或下载。

    PDF格式

    电子阅读器

    使用eReader联机查看。

    电子阅读器