Code conventions: Underscore on private fields
Why would you put underscore on private fields in a class?
- Because it is easier to determine in a method if the variable being used is a private field or not.
Why would you not put underscore on private fields in a class?
Because you already state in the declaration of the field that it is private. The underscore is duplicating that purpose. It would be the same (in a horrifying and extreme kind of way) as
private static MySingleton privateStaticFieldInstance;
There already is a solution to the problem. If you put this-keyword when you use a private field, it will become just as clear as the underscore. This is a built in language feature and should be used before any made up convention.
return this.instance;
Using this is also much better out of readability. One does not have to learn the convention of underscore. This is a part of C# and therefor well documented for the reader to look up.
Now, let's dance!
comments powered by Disqus