Be a Thinker First, Then Doer
Readers of the Topic – Developers
- Underscore(_) or not underscore with the private member variable
- Shouldn’t use of var everywhere
- When must use ‘
- When can’t be used ‘
Let’s Drill Down the Basic Concept
Adam Rusch is my colleague and he is working as “Dot-Net C# developer” in a company. Code-review is the part of his job responsibility. So, during code review, he is confused about the coding standard for the private member variables as well as the use of “
var” everywhere as a data-type. He is considering C# as a programing languages and .NET as development platform.
Naming Convention for Private Member Variables
Question: Adam asked me, which convention is standard with underscore or without underscore?
Ans: I said, it depended on the personal preference of the developer. But Adam was not satisfied with the answer.
Investigation to Underscore or not to Underscore
Few programing languages is not case sensitive for example say, Visual Basic (old version). So, in the vb, there is no difference between Pascale case (i.e, VariableName) and camel case (i.e, variableName). Therefore, they use underscore with the private member variable (i.e, _variableName).
The C# is a case sensitive programing language and it knows the difference between pascale case (VariableName) and camel case (variableName).
- If the C# is a case sensitive programing language, then why am I using underscore (_) prefix before private member variable?
- What is the extra benefit to use the undescore(_) prefix before private member variable?
- Am I just only a doer? Few peoples are following this convention and that’s why am I using the same convention?
- Is it the beauty of readability?
Solution: First, be a THINKER, then DOER.
Improper Use of ‘Var’ Everywhere
Have a Question
- In the above example, are these the beauty of readability?
- Why am I using var for simple declaration?
- Why, I can’t say that, these kind of improper use, are an anti-pattern?
Investigation to var or not to var
‘var’ should not be used in simple declarations, shown as bellow –
When Must Use ‘var’
- Should be used in
- Should be used with
When can’t it be used
There is a restriction, declaring local variables within the method or property, including iteration variable in ‘for’ or ‘foreach’ statements.
- As a type of field
- As a type of parameter
- As a return type of method or property
- As a type parameter in generic type or method
Solution: First, be a thinker, then doer.