<!DOCTYPE qhelp PUBLIC
  "-//Semmle//qhelp//EN"
  "qhelp.dtd">
<qhelp>
<overview>
<p>Definitions of constants should be placed in an appropriate class where they belong logically. 
It is usually bad practice to define an abstract class purely to hold a number of constant definitions.</p>

</overview>
<recommendation>
<p>This often arises when a developer attempts to put the constant definitions into scope by just
extending an abstract class that defines them. While this does save a few characters by not requiring 
the constant names to be qualified, it is considered bad practice and constants should be referred to by 
qualified name if needed.</p>

</recommendation>
<example>
<sample src="NoConstantsOnlyBad.cs" />

</example>
</qhelp>
