Code refactoring is the process of restructuring existing computer code—changing the
factoring—without changing its external behavior. Refactoring is intended to improve
nonfunctional attributes of the software. ... By continuously improving the design of code, we make it easier and easier to work with. Refactoring is the process of changing a software system in such a way that it does not alter the external behavior of the code, yet improves its internal structure. ...Refactoring Makes Software Easier to Understand and Maintain. Refactoring Helps Finding Bugs. Refactoring Helps Programming Faster. Refactoring even take a bad design of a project and rework it into a good one. ... It is a activity which is a solution to your problems, its performed when modifying the existing code of a project to incorporate new features or to enhance. In computer programming, a code smell is any characteristic in the source code of a program that possibly indicates a deeper problem. Determining what is and is not acode smell is subjective, and varies by language, developer, and development methodology. ... It is also a term used by agile programmers.