Looks like no one added any tags here yet for you.
Refactoring
is a systematic process of improving code without creating new functionality that can transform a mess into clean code and simple design.
Dirty code
is result of inexperience multiplied by tight deadlines,mismanagement, and nasty shortcuts taken during the development process.
Clean code
is code that is easy to read,understand and maintain. Clean code makes software development predictable and increases the quality of a resulting product.
Refactoring Process
Performing refactoring step-by-step and running tests after each change are key elements of refactoring that make it predictable and safe.
Code smells
are indicators of problems that can be addressed during refactoring. Code smells are easy to spot and fix, but they may be just symptoms of a deeper problem with code.
Refactoring Techniques
Refactoring techniques describe actual refactoring steps. Most refactoring techniques have their pros and cons. Therefore, each refactoring should be properly motivated and applied with caution.