Diagnosable Code Duplication in Introductory Programming

被引:0
|
作者
Rechtackova, Anna [1 ]
Pelanek, Radek [1 ]
机构
[1] Masaryk Univ, Brno, Czech Republic
关键词
code quality; !text type='Python']Python[!/text; novice programmers; automated feedback; duplicate code;
D O I
暂无
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
Code quality is an important aspect of programming education, with duplicate code being a common issue. To help students learn to avoid code duplication, it is useful to provide them with actionable, specific feedback, not just a generic code duplication warning. In this paper, we introduce the concept of diagnosable code duplication, provide an overview of its various types, and propose a framework for automatic detection. We apply the framework to an introductory programming dataset to demonstrate its ability to provide specific feedback and reveal non-trivial differences in detected cases compared to simpler detectors.
引用
收藏
页码:987 / 993
页数:7
相关论文
共 50 条
  • [31] Introductory programming in a web context
    de Raadt, Michael
    Conferences in Research and Practice in Information Technology Series, 2010, 103 : 79 - 85
  • [32] Introductory Mathematical Programming for EC
    Shir, Ofer M.
    PROCEEDINGS OF THE 2022 GENETIC AND EVOLUTIONARY COMPUTATION CONFERENCE COMPANION, GECCO 2022, 2022, : 1067 - 1080
  • [33] Serious Game for Introductory Programming
    Coelho, Antonio
    Kato, Enrique
    Xavier, Joao
    Goncalves, Ricardo
    SERIOUS GAMES DEVELOPMENT AND APPLICATIONS, 2011, 6944 : 61 - 71
  • [34] CodeAdventure: Learning Introductory Programming
    Nicou, Giorgos
    Andreou, Panayiotis
    Polycarpou, Irene
    ITICSE'17: PROCEEDINGS OF THE 2017 ACM CONFERENCE ON INNOVATION AND TECHNOLOGY IN COMPUTER SCIENCE EDUCATION, 2017, : 368 - 368
  • [35] LINEAR PROGRAMMING - AN INTRODUCTORY ANALYSIS
    GASS, SI
    OPERATIONS RESEARCH, 1966, 14 (02) : 357 - &
  • [36] Lava - the introductory programming language
    McAnulty, Bryan
    Wang, Baoying
    INT CONF ON CYBERNETICS AND INFORMATION TECHNOLOGIES, SYSTEMS AND APPLICATIONS/INT CONF ON COMPUTING, COMMUNICATIONS AND CONTROL TECHNOLOGIES, VOL II, 2007, : 154 - 158
  • [37] MATLAB as an introductory programming language
    Wirth, MA
    Kovesi, P
    COMPUTER APPLICATIONS IN ENGINEERING EDUCATION, 2006, 14 (01) : 20 - 30
  • [38] Building Skills in Introductory Programming
    Figueiredo, Jose
    Jose Garcia-Penalvo, Francisco
    SIXTH INTERNATIONAL CONFERENCE ON TECHNOLOGICAL ECOSYSTEMS FOR ENHANCING MULTICULTURALITY (TEEM'18), 2018, : 46 - 50
  • [39] Designing Programming Games for Diversity in Teaching Introductory Programming
    Anyango, Jecton Tocho
    Suleman, Hussein
    ICT EDUCATION, SACLA 2020, 2021, 1518 : 19 - 36
  • [40] Detecting Exploratory Programming Behaviors for Introductory Programming Exercises
    Makihara, Erina
    Igaki, Hiroshi
    Yoshida, Norihiro
    Fujiwara, Kenji
    Iida, Hajimu
    2016 IEEE 24TH INTERNATIONAL CONFERENCE ON PROGRAM COMPREHENSION (ICPC), 2016,