Catchingexceptionsand loggingonlyRepetitiveNamingNon-searchablevariablenamevariabledeclaredfar fromits usageverticalopennessbetweenconceptsRequireshorizontalscrollingToo ManyResponsibilitiesCodeDuplicationSwitchStatementAbuseCommentsExplainingCodelargefunctionswith nestedstructuresMessageChains –a.b().c().d()trainwreckViolatesCommand-QuerySeparationFree!Dependentfunctionsare farapartCommentedOut CodeErrorcodesinstead ofexceptionMultipleReturnPointsToo manyarguments(>3)Unpronounceable/Confusing namingLongMethodCatchingexceptionsand loggingonlyRepetitiveNamingNon-searchablevariablenamevariabledeclaredfar fromits usageverticalopennessbetweenconceptsRequireshorizontalscrollingToo ManyResponsibilitiesCodeDuplicationSwitchStatementAbuseCommentsExplainingCodelargefunctionswith nestedstructuresMessageChains –a.b().c().d()trainwreckViolatesCommand-QuerySeparationFree!Dependentfunctionsare farapartCommentedOut CodeErrorcodesinstead ofexceptionMultipleReturnPointsToo manyarguments(>3)Unpronounceable/Confusing namingLongMethod

Code Smell Bingo!! - Call List

(Print) Use this randomly generated list as your call list when playing the game. There is no need to say the BINGO column name. Place some kind of mark (like an X, a checkmark, a dot, tally mark, etc) on each cell as you announce it, to keep track. You can also cut out each item, place them in a bag and pull words from the bag.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
  1. Catching exceptions and logging only
  2. Repetitive Naming
  3. Non-searchable variable name
  4. variable declared far from its usage
  5. vertical openness between concepts
  6. Requires horizontal scrolling
  7. Too Many Responsibilities
  8. Code Duplication
  9. Switch Statement Abuse
  10. Comments Explaining Code
  11. large functions with nested structures
  12. Message Chains – a.b().c().d() trainwreck
  13. Violates Command-Query Separation
  14. Free!
  15. Dependent functions are far apart
  16. Commented Out Code
  17. Error codes instead of exception
  18. Multiple Return Points
  19. Too many arguments (>3)
  20. Unpronounceable/ Confusing naming
  21. Long Method