• What rules do you use to name your variables?
  • Where are single letter vars allowed?
  • How much info do you put in the name?
  • How about for example code?
  • What are your preferred meaningless variable names? (after foo & bar)
  • Why are they spelled "foo" and "bar" rather than FUBAR

Solution 1:

function startEditing(){
   if (user.canEdit(currentDocument)){
      editorControl.setEditMode(true);
      setButtonDown(btnStartEditing);
   }
 }

Should read like a narrative work.

Solution 2:

One rule I always follow is this: if a variable encodes a value that is in some particular units, then those units have to be part of the variable name. Example:

int postalCodeDistanceMiles;
decimal reactorCoreTemperatureKelvin;
decimal altitudeMsl;
int userExperienceWongBakerPainScale

I will NOT be responsible for crashing any Mars landers (or the equivalent failure in my boring CRUD business applications).

Solution 3:

Well it all depends on the language you are developing in. As I am currently using C# I tend you use the following.

camelCase for variables.

camelCase for parameters.

PascalCase for properties.

m_PascalCase for member variables.

Where are single letter vars allows? I tend to do this in for loops but feel a bit guilty whenever I do so. But with foreach and lambda expressions for loops are not really that common now.

How much info do you put in the name? If the code is a bit difficult to understand write a comment. Don't turn a variable name into a comment, i.e . int theTotalAccountValueIsStoredHere is not required.

what are your preferred meaningless variable names? (after foo & bar) i or x. foo and bar are a bit too university text book example for me.

why are they spelled "foo" and "bar" rather than FUBAR? Tradition