|
|
|
| Refactoring Resource Center | |
| | |
 | |
| |
| |
| |
|
| Refactoring | | http://www.devbazar.com/modules/news/article.php?storyid=23&page=0 | | Article: “Refactoring,” from Devbazar.com. Discusses who need refactoring, what refactoring is, examples of refactorings (including rename, move class, extract method, extract superclass, and replace conditional with polymorphism), when to consider using refactoring, the benefits of refactoring, refactoring concerns, and why use an automated tool. | | |
| |
|
| A Refactoring Example | | http://www.perl.com/pub/a/2003/10/09/refactoring.html | | Article: “A Refactoring Example,” by Michael Schwern. Discusses what refactoring does, indentation, working in small steps, big refactorings from small, using bind variables, splitting a poorly reused variable, pulling code out of the loop, a place to stop, reformatting SQL for better readability, removing redundancy, fixing conflicting styles, naming, changing global variable names, improving overly generic names, fixing odd interfaces, using chop and chomp, collecting related variables into hashes, when not to refactor, eliminating unnecessary longhand, rearranging data structures to fit their use, eliminating unnecessary variables, pulling logical chunks out into functions, and using undo. | | |
|
| Introduction to Refactoring | | http://www.tabdee.ltd.uk/software/papers/refactoring/refactoring.html | | Article: "Introduction to Refactoring," by Jim Cooper. Discusses what refactoring is, why refactor?, aims of refactoring, opportunities for refactoring, refactoring techniques, learning to apply refactorings, the extract method, the extract class, the inline class, the move method, the inline temp, the split temporary variable, the rename method, the replace magic number with symbolic constant, the replace error code with exception, the encapsulate field, the remove control flag, the form template method, the introduce local extension, the replace type code with state/strategy, the replace conditional with polymorphism, the replace method with method object, the hide delegate, the duplicate observed data, the introduce null object, the encapsulate downcast, the moving methods and fields up and down a hierarchy, converting refactorings to Delphi, bad smells (when to refactor), problems, and refactoring tools. | | |
|
| Code Smell Definition | | http://en.wikipedia.org/wiki/code_smell | | Code Smell definition from Wikipedia. Discusses what code smells are and common code smells including the large method, the large class, feature envy, inappropriate intimacy, refused bequest, the lazy class, duplicated method and contrived complexity. | | |
| |
| |
|
|
| |
 |
|
|
|
|