Coding Practices

  1. Avoid putting multiple classes in a single file.

  2. A single file should contribute types to only a single namespace. Avoid having multiple namespaces in the same file.

  3. Avoid files with more than 500 lines (excluding machine-generated code).

  4. Avoid methods with more than 25 lines.

  5. Avoid methods with more than five arguments. Use structures for passing multiple arguments.

  6. Lines should not exceed 80 characters.

  7. Do not manually edit any machine-generated code.

    1. If modifying machine-generated code, modify the format and style to match this coding standard.

    2. Use partial classes whenever possible to factor out the maintained portions.

  8. Avoid comments that explain the obvious. Code should be self-explanatory. Good code with readable variable and method names should not require comments.

  9. Document only operational assumptions, algorithm insights, and so on.

  10. Avoid method-level documentation.

    1. Use extensive external documentation for API documentation.

    2. Use method-level comments only as tool tips for other developers.

  11. With the exception of zero and one, never hardcode a numeric value; always declare a constant instead.

  12. Use the const directive only on natural constants, such as the number of days of the week.

  13. Avoid using const on read-only variables. For that, use the readonly directive:

    public class MyClass
    {
       public const int DaysInWeek = 7;
       public readonlyint Number;
       public MyClass(int someValue)
       {
          Number = someValue;
       }
    }
  14. Assert every assumption. On average, every fifth line is an assertion:

    using System.Diagnostics; ...

Get Programming .NET Components, 2nd Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.