Long Method large functions with nested structures Too many arguments (>3) Multiple Return Points Dependent functions are far apart Violates Command- Query Separation Comments Explaining Code Confusing Naming Requires horizontal scrolling missing legal comments Deep Nesting Missing summary comment on a public method variable declared far from its usage Message Chains – a.b().c().d() trainwreck Switch Statement Abuse Catching exceptions and logging only vertical openness between concepts Commented Out Code Unpronounceable naming Repetitive Naming Error codes instead of exception Non- searchable variable name Code Duplication Too Many Responsibilities Long Method large functions with nested structures Too many arguments (>3) Multiple Return Points Dependent functions are far apart Violates Command- Query Separation Comments Explaining Code Confusing Naming Requires horizontal scrolling missing legal comments Deep Nesting Missing summary comment on a public method variable declared far from its usage Message Chains – a.b().c().d() trainwreck Switch Statement Abuse Catching exceptions and logging only vertical openness between concepts Commented Out Code Unpronounceable naming Repetitive Naming Error codes instead of exception Non- searchable variable name Code Duplication Too Many Responsibilities
(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.
Long Method
large functions with nested structures
Too many arguments (>3)
Multiple Return Points
Dependent functions are far apart
Violates Command-Query Separation
Comments Explaining Code
Confusing Naming
Requires horizontal scrolling
missing legal comments
Deep Nesting
Missing summary comment on a public method
variable declared far from its usage
Message Chains – a.b().c().d() trainwreck
Switch Statement Abuse
Catching exceptions and logging only
vertical openness between concepts
Commented Out Code
Unpronounceable naming
Repetitive Naming
Error codes instead of exception
Non-searchable variable name
Code Duplication
Too Many Responsibilities