====== Smell ====== ===== Meaning 1 ===== ==== Alternative Terms ==== /*i.e. alternative names meaning the same thing*/ ==== Definition ==== A **smell** is either an [[anti-pattern]] or a symptom which hints that there might be a deeper problem in the code or in the design. ==== Description ==== * An anti-pattern is a smell if it manifests somewhere in the code. * [[anti-patterns:Copy and Paste Programming]] is a methodological anti-pattern but not a code smell as it does not directly manifest in the code. [[anti-patterns:Duplicated Code]] is the corresponding smell (and also an anti-pattern). * [[glossary:Shotgun Surgery]] is a code smell which is rather a symptom than an anti-pattern. * There are smells on different levels of abstraction: code smells and design smells ==== Examples ==== ==== Alternative Definitions ==== /*i.e. slightly different definitions for basically the same thing*/ ==== See Also ==== ==== Further Reading ==== ---- ===== Other Meanings ===== /*i.e. the same term referring to something different; put short mentions here or better add more detailed descriptions as additional sections */ ---- ===== Discussion ===== Discuss this wiki article and the term on the corresponding [[talk:glossary:Smell|talk page]].