Diplomová práce
Získaná ocenění: Cena děkana FI za vynikající závěrečnou práci

Detecting code quality defects in students’ solutions

Bc. Anna Řechtáčková
Anotace

Kvalita kódu je klíčová pro snadnou údržbu kódu. Učit začínající programátory psát kvalitní kód pomocí posouzení jejich kódu člověkem ovšem špatně škáluje. Existuje řada automatizovaných nástrojů, ale jejich zpětná vazba není vždy relevantní, nebo je pro začátečníky těžké je použít. Cílem této práce je vytvořit nástroj, který nedostatky existujících nástrojů překonává. Pro dosažení tohoto cíle jsem …více

Abstract

Code quality is critical for easy code maintenance, but teaching it to novice programmers through manual code reviews scales poorly. Several automated tools exist, but their feedback is only sometimes relevant, or they are hard to use by novices. The focus of this thesis is to create a tool that overcomes the shortcomings of the existing tools. To achieve that, I developed EduLint, a Python linter …více

Zadání práce
The thesis aims to create a tool for detecting code quality defects in Python code written by novice programmers (e.g., students of introductory programming courses or users of online learning platforms). The tool should detect various stylistic and structural defects, such as using a while loop instead of a for loop, conditions that can be simplified using logical operators, use of global variables, unreachable code or code with no effect, and similar. The tool should provide a reasonable default configuration specifying which defects will be reported and a convenient way to alter the configuration, even on a per-file basis. All the configuration options should be documented. It should be possible to run the tool from the command line to allow for possible integration into other tools. The tool should also provide a web interface so that students can easily interact with it. The site should display detected defects, their explanations and related code examples. Evaluation of the detectors should be a part of the thesis.
Práce zkontrolována:
17. 5. 2023 07:28, RNDr. Tomáš Effenberger, Ph.D., učo 410350
Jazyk práce
angličtina angličtina
Termín obhajoby
19. 6. 2023
Práce byla úspěšně obhájena

Vedoucí

RNDr. Tomáš Effenberger, Ph.D., učo 410350
KTP FI MU

Oponent

doc. Mgr. Radek Pelánek, Ph.D., učo 4297
KSUZD FI MU

  • Přidání souboru

    Soubor nebo složku lze nahrát pomocí tlačítka Přidat.
  • Další operace se soubory

    Podrobnosti lze zjistit označením příslušného řádku.
  • Pohled pro experty

    Pro častou práci je možné zvolit režim Více možností.
  • Vyhledávání souborů

    Vyhledávaný výraz můžete zadat přímo do adresního řádku.
  • Rychlý přístup k souborům

    Pomocí funkce Nedávné je možné se rychle vrátit k právě prohlíženým souborům. Oblíbené soubory je také možné označit Hvězdičkou.