Non-searchablevariablenameSwitchStatementAbuseverticalopennessbetweenconceptsCodeDuplicationErrorcodesinstead ofexceptionRequireshorizontalscrollingLongMethodFree!largefunctionswith nestedstructuresRepetitiveNamingCommentedOut CodeCatchingexceptionsand loggingonlyvariabledeclaredfar fromits usageToo ManyResponsibilitiesMessageChains –a.b().c().d()trainwreckCommentsExplainingCodeMultipleReturnPointsViolatesCommand-QuerySeparationToo manyarguments(>3)Dependentfunctionsare farapartUnpronounceable/Confusing namingNon-searchablevariablenameSwitchStatementAbuseverticalopennessbetweenconceptsCodeDuplicationErrorcodesinstead ofexceptionRequireshorizontalscrollingLongMethodFree!largefunctionswith nestedstructuresRepetitiveNamingCommentedOut CodeCatchingexceptionsand loggingonlyvariabledeclaredfar fromits usageToo ManyResponsibilitiesMessageChains –a.b().c().d()trainwreckCommentsExplainingCodeMultipleReturnPointsViolatesCommand-QuerySeparationToo manyarguments(>3)Dependentfunctionsare farapartUnpronounceable/Confusing naming

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