https://github.com/cqfn/veniq
Veniq uses Machine Learning to analyze source code, find possible refactorings, and suggest those that seem optimal
https://github.com/cqfn/veniq
machine-learning refactorings static-analysis
Last synced: 11 months ago
JSON representation
Veniq uses Machine Learning to analyze source code, find possible refactorings, and suggest those that seem optimal
- Host: GitHub
- URL: https://github.com/cqfn/veniq
- Owner: cqfn
- License: mit
- Created: 2020-09-18T08:31:12.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2024-05-03T19:46:57.000Z (about 2 years ago)
- Last Synced: 2025-05-05T06:11:38.283Z (about 1 year ago)
- Topics: machine-learning, refactorings, static-analysis
- Language: Python
- Homepage:
- Size: 772 KB
- Stars: 20
- Watchers: 5
- Forks: 3
- Open Issues: 23
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Introduction
Almost every developer would be glad to delegate their routine tasks. Technical debt is the kind of routine we usually do not have time to do.
Leaving technical debt may help product development in the short term, but can ruin the project in the long term.
A `Long Method` code smell and its `Extract Method` refactoring are among most popular refactorings
developers do. However, there is no consensus how to do `Extract Method` exactly.
In our research project we are aimed to create an `Extract Method` recommender system using Machine Leanning. The system takes in a source-code of a Java method
and recommends how decompose it into two parts.
We are interested in study factors inluencing how developers prefer to do `Extract Method` refactoring.