diff --git a/Code_Smells_Patterns.md b/Code_Smells_Patterns.md index adbda10..31fdc87 100644 --- a/Code_Smells_Patterns.md +++ b/Code_Smells_Patterns.md @@ -3,18 +3,22 @@ **Code Smells** are often signs that refactoring could be needed. That is not always the case, but these "smells" should be looked at further to dethermine if there is a need for refactoring. **Duplicated Code** + Force: Refactoring may be considered if a common structure is recongized among related methods. Solution: It may be possible to generalize smaller methods to allow them to work as one. However, you must be careful to not over generalize a method and allow it to have more power than nessecary. A good metric to measure by is that a method should have between 6-9 meaningful lines of code. + **Excessive Conditionals** + Force: Refactoring may be considered if a section of code seems overloaded with conditional statements or switch cases Solution: It may be possible to break these conditionals up into smaller, more conscise methods that are easier to read and have a clear purpose. **Reocurring Parameter lists** + Force: Refactoring may be considered if a certian list of parameters keeps reappearing in many methods. For example: - +``` function(int a, int b, string c) function2(int a, int b, string c) function3(int a, int b, string c)