Implementing refactoring guidance into Eclipse

Refactoring is a process used by programmers to improve the non-functional qualities of code. It does not affect the actual output of the program, but it is useful for making the code easier to read and maintain. In practice, it often requires a lot of programming experience to implement refactoring properly, making it challenging for novice programmers. There are existing tools that can help facilitate the refactoring process. However, none of them can provide meaningful guidance to a programmer with regards to what refactoring methods should be used, or how to. This project proposes an Eclipse plug-in tool that provides a refactoring knowledge base for developers to reference. It allows developers to understand when to use and how to implement a refactoring method. In addition, the knowledge base presents related refactoring methods in order to create refactoring sequences. This tool can also help keep track of common refactoring patterns for a programmer or a target code base.