Code Smell - Common Code Smells

Common Code Smells

  • Duplicated code: identical or very similar code exists in more than one location.
  • Long method: a method, function, or procedure that has grown too large.
  • Large class: a class that has grown too large. See God object.
  • Too many parameters: a long list of parameters in a procedure or function make readability and code quality worse.
  • Feature envy: a class that uses methods of another class excessively.
  • Inappropriate intimacy: a class that has dependencies on implementation details of another class.
  • Refused bequest: a class that overrides a method of a base class in such a way that the contract of the base class is not honored by the derived class. See Liskov substitution principle.
  • Lazy class / Freeloader: a class that does too little.
  • Contrived complexity: forced usage of overly complicated design patterns where simpler design would suffice.
  • Excessively long identifiers: in particular, the use of naming conventions to provide disambiguation that should be implicit in the software architecture.
  • Excessively short identifiers: the name of a variable should reflect its function unless the function is obvious.
  • Excessive use of literals: these should be coded as named constants, to improve readability and to avoid programming errors. Additionally, literals can and should be externalized into resource files/scripts where possible, to facilitate localization of software if it is intended to be deployed in different regions.
  • Ubercallback: a callback that is trying to do everything
  • Complex conditionals: branches that check lots of unrelated conditions and edge cases that don't seem to capture the meaning of a block of code.

Read more about this topic:  Code Smell

Famous quotes containing the words common, code and/or smells:

    Nobody can deny but religion is a comfort to the distressed, a cordial to the sick, and sometimes a restraint on the wicked; therefore whoever would argue or laugh it out of the world without giving some equivalent for it ought to be treated as a common enemy.
    Mary Wortley, Lady Montagu (1689–1762)

    Motion or change, and identity or rest, are the first and second secrets of nature: Motion and Rest. The whole code of her laws may be written on the thumbnail, or the signet of a ring.
    Ralph Waldo Emerson (1803–1882)

    O, my offense is rank, it smells to heaven,
    It hath the primal eldest curse upon’t,
    A brother’s murder.
    William Shakespeare (1564–1616)