Programming Environments for Blocks Need First-Class Software Refactoring Support A Position Paper

被引:0
|
作者
Techapalokul, Peeratham [1 ]
Tilevich, Eli [1 ]
机构
[1] Virginia Tech, Software Innovat Lab, Blacksburg, VA 24061 USA
关键词
refactoring; metrics; code smells; block-based programming languages; end-user software engineering; computer science curriculum; introductory programming;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Block-based programming languages and their development environments have become a widely used educational platform for novices to learn how to program. In addition, these languages and environments have been increasingly embraced by domain experts to develop end-user software. Though popular for having a "low floor" (easy to get started), programs written in block-based languages often become unwieldy as projects grow progressively more complex. Software refactoring-improving the design quality of a codebase while preserving its external functionality-has been shown highly effective as a means of improving the quality of software written in text-based languages. Unfortunately, programming environments for blocks lack systematic software refactoring support. In this position paper, we argue that first-class software refactoring support must become an essential feature in programming environments for blocks; we present our research vision and concrete research directions, including program analysis to detect "code smells," automated transformations for block-based programs to support common refactoring techniques, and integration of refactoring into introductory computing curricula.
引用
收藏
页码:109 / 111
页数:3
相关论文
共 50 条
  • [1] Position Paper: Towards Usability as a First-Class Quality of HPC Scientific Software
    Milewicz, Reed
    Rodeghero, Paige
    2019 IEEE/ACM 14TH INTERNATIONAL WORKSHOP ON SOFTWARE ENGINEERING FOR SCIENCE (SE4SCIENCE 2019), 2019, : 41 - 42
  • [2] Collaboration should become a first-class citizen in support environments for software engineers
    Dullemond, Kevin
    van Gameren, Ben
    van Solingen, Rini
    PROCEEDINGS OF THE 2012 8TH INTERNATIONAL CONFERENCE ON COLLABORATIVE COMPUTING: NETWORKING, APPLICATIONS AND WORKSHARING (COLLABORATECOM 2012), 2012, : 398 - 405
  • [3] A Case for First-Class Environments
    Tan, Jinhao
    Oliveira, Bruno C. D. S.
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2024, 8 (OOPSLA): : 2521 - 2550
  • [4] How to write a first-class paper
    Gewin V.
    Nature, 2018, 555 (7694) : 129 - 130
  • [5] Extensible programming with first-class cases
    Blume, Matthias
    Acar, Umut A.
    Chae, Wonseok
    ACM SIGPLAN NOTICES, 2006, 41 (09) : 239 - 250
  • [6] First-Class Connectors to Support Systematic Construction of Hierarchical Software Architecture
    Amirat, Abdelkrim
    Oussalah, Mourad
    JOURNAL OF OBJECT TECHNOLOGY, 2009, 8 (07): : 107 - 130
  • [7] Free variables and first-class environments
    Miller, James S.
    Rozas, Guillermo J.
    LISP and Symbolic Computation, 1991, 4 (02):
  • [8] First-class Environments in Categorical Combinators
    Joko, Hiroki
    Nishizaki, Shin-ya
    THEORY AND PRACTICE OF COMPUTATION, 2018, : 28 - 43
  • [10] Faded jeans now first-class paper
    Landers, Debbie
    PIMA Magazine (Paper Industry Management Association), 1993, 75 (07):