University of Twente Student Theses

Login

Support Python in RefDetect

Mukhachev, V. (2024) Support Python in RefDetect.

[img] PDF
611kB
Abstract:Refactoring is an essential technique required by every codebase at some point in its lifecycle. Its purpose is to improve the project’s structure while preserving its functionality. However, after multiple changes, it can be chal- lenging to clearly identify what changes were made and how they were implemented. Refactoring detection tools have been developed to address this issue by informing users of the types of refactorings performed be- tween two project versions. One such tool, and the subject of this paper, is RefDetect. RefDetect employs a unique, language-agnostic approach, allowing it to be extended to support any programming language. This paper describes the unique details and challenges encountered during the development process to support Python in RefDetect. We explain RefDetect’s structure, examine the differences between its primary language, Java, and Python, describe the approach used to overcome these differences, and evaluate its detection capabilities using a set of test cases. This paper not only focuses on the tool’s implementation but also provides a comparison of object-oriented programming principles among robust languages like Java, C++, Kotlin, and Python.
Item Type:Essay (Bachelor)
Faculty:EEMCS: Electrical Engineering, Mathematics and Computer Science
Subject:54 computer science
Programme:Computer Science BSc (56964)
Link to this item:https://purl.utwente.nl/essays/100856
Export this item as:BibTeX
EndNote
HTML Citation
Reference Manager

 

Repository Staff Only: item control page