Comments in C#

In this article I will explain about comments and there usage in code.

Comments can be used to document what the program does and what specific blocks or lines of code do. Since the C# compiler ignores comments, you can include them anywhere in a program without affecting your code.

How to comment?

A comment is preceded by an double forward slash. The code of line after the double forward slash is simply ignored by the compiler.

We have following types of comments in C#

  • Single line comments
    1. // for single line comments  
  • Multiple line comments
    1. /* for multi line comments */  
  • XML tags comments
    1. /// XML tags displayed in a code comment

To code a comment, type an double forward slash followed by the comment. You can use this technique to add a comment on its own line or to add a comment after the code on a line.

Often when you code, you may want to comment out an entire block of code statements. Under normal circumstances, to do so you must Comment out each line individually.

Another way to comment out one or more lines of code to select the lines and click on the Comment or UnComment button in the Text Editor toolbar.

Shortcut: You can use Ctrl+K, Ctrl+C and Ctrl+K, Ctrl+U to Comment or Uncomment selected lines of text.

Tips to Comment your code
  • Use comments only for portions of code that are difficult to understand
  • Comments are used to help document what a program does and what the code with it does. Keep the comments simple and direct. Avoid ASCII art, jokes, poetry and hyper verbosity.
  • Make sure that your comments are correct and up-to-date. There is no point in commenting correctly on code if the comments are not changed with the code. Both code and comments must move in parallel, otherwise the comments will actually make life more difficult for developers who maintain your code.
  • During testing, you can comment out lines of code by coding an apostrophe before them. This is useful for testing new statements without deleting the old statement.
  • Align comments in consecutive lines

    For multiple lines of code with trailing comments, align the comments so they will be easy to read.
    1. const int level = 100;               // The level mark is constant to 100 can't be changed  
    2. const decimal turnaround = 45.67;    // The turnaround is constant and can't be placed more   
    Some developers use tabs to align comments, while others use spaces. Because tab stops can vary among editors and IDEs, the best approach is to use spaces.
  • Use paragraph comments

    If you comment is very long in line of text break into paragraph show it can be seen in a single view.

    Instead of writing like this:
    1. // Author Puran Singh Mehra. Xyz Company. Created on 7th December 2008 12:23:34 P.M.  
    Break into different lines like this:
    1. // Author Puran Singh Mehra.   
    2. // Xyz Company.   
    3. // Created on 7th December 2008 12:23:34 P.M.   
  • Consistent style of commenting

    Some people believe that comments should be written so that non-programmers can understand them. Others believe that comments should be directed at developers only.

    Comments are consistent and always targeted to the same audience. Comments should target to developers and non-developers.
  • Don't insult the reader's intelligence

    Avoid obvious comments such as:
    1. int age = 45;  
    2. if (age >= 18)  // If age is greater than 18 a person can vote  
    3.     Console.WriteLine("Vote");  
    4. else  
    5.     Console.WriteLine("Can't Vote");
    This wastes your time writing needless comments and distracts the reader with details that can be easily removed from the code.
     
  • Comment code while writing it

    Add comments while you write code and it's fresh in your memory. If you leave comments until the end, it will take you twice as long, if you do it at all. "I have no time to comment," "I'm in a hurry," and "The project is delayed" are all simply excuses to avoid documenting your code. Some developers believe you should write comments before code as a way to plan out your ultimate solution.

    For example:
    1. protected void Button1_Click(object sender, EventArgs e)  
    2. {  
    3.     // On click of button check prior that values are entered properly in order  
    4.     // Validate date for range and data types  
    5.     // ask before submitting values  
    6.     // make this entry in the database  
    7.     // then you can follow your code  
    8. } 
  • Write comments as if they were for you (in fact, they are)

    When it comes to commenting code, think not only about the developers who will maintain your code in the future, but also think about yourself. In the words of the great Phil Haack:

    "As soon as a line of code is laid on the screen, you're in maintenance mode on that piece of code."

    As a result, we ourselves will be the first beneficiaries (or victims) of our good (or bad) comments.
     
  • Write a comment in a polite manner

    Avoid rude and harsh comments. You never know who may read these comments in the future: your boss, a customer, or the pathetically inept developer you just insulted. So maintain your respect and dignity.
     
  • The golden rule.

    Let the code speak for itself. You code should be written in such a way that everyone should easily understand it.

    For example:
    1. public Form1()  
    2. {  
    3.     InitializeComponent();  
    4.     SqlConnection con = new SqlConnection("Data Source=MCN002;Initial Catalog=puran; Integrated Security=True");  
    5.     string cmd = "Select * from testpuran";  
    6.     con.Open();  
    7.     SqlDataAdapter da = new SqlDataAdapter(cmd, con);  
    8.     DataSet ds = new DataSet();  
    9.     da.Fill(ds);  
    10.     dataGrid1.DataSource = ds;  
    11. }
Conclusion

Hope the article would have helped you in understanding comments and their usage and importance in coding. Proper usage of comments makes your code easily to understand and improve performance.

Your feedback and constructive contributions are welcome. Please feel free to contact me for feedback or comments you may have about this article.