Free!Catchingexceptionsand loggingonlyLongMethodverticalopennessbetweenconceptsMessageChains –a.b().c().d()trainwreckUnpronounceable/Confusing namingToo ManyResponsibilitiesErrorcodesinstead ofexceptionMultipleReturnPointsvariabledeclaredfar fromits usagelargefunctionswith nestedstructuresRequireshorizontalscrollingRepetitiveNamingSwitchStatementAbuseCommentedOut CodeNon-searchablevariablenameToo manyarguments(>3)CommentsExplainingCodeViolatesCommand-QuerySeparationDependentfunctionsare farapartCodeDuplicationFree!Catchingexceptionsand loggingonlyLongMethodverticalopennessbetweenconceptsMessageChains –a.b().c().d()trainwreckUnpronounceable/Confusing namingToo ManyResponsibilitiesErrorcodesinstead ofexceptionMultipleReturnPointsvariabledeclaredfar fromits usagelargefunctionswith nestedstructuresRequireshorizontalscrollingRepetitiveNamingSwitchStatementAbuseCommentedOut CodeNon-searchablevariablenameToo manyarguments(>3)CommentsExplainingCodeViolatesCommand-QuerySeparationDependentfunctionsare farapartCodeDuplication

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