Wednesday, March 6, 2013

Naming Conventions


It's common to use a variable naming convention to distinguish between fields, arguments, and local variables.
Within the body of a method, all of these types of variables can appear. Many find naming conventions to be a helpful aid in getting a rapid understanding of a method's implementation. These conventions have only one purpose : to pour understanding into the brain of the reader as quickly as possible.

To understand a method, you need to understand its data. An important part of understanding data is understanding where it is defined - as a field, argument, or local variable. Naming conventions which distinguish these cases usually allow the reader to understand an implementation more quickly, since they no longer need to scan the class to determine where items are defined.

Some different styles are :

field : fBlah, _blah, blah_, this.blah, m_blah, myBlah
argument : aBlahBlah, pBlah
local variable : blahBlah
constant : BLAH_BLAH
As well, some use a naming convention for type names, to distinguish between interfaces and regular classes :
interface : IBlahBlah
class : BlahBlah, CBlahBlah
Note that this 'I' and 'C' convention is fundamentally different from the other conventions mentioned above. This convention is visible to the caller, while the other naming conventions, being confined to the implementation, are not.
The example code on this site usually follows these conventions :

field : fBlahBlah
argument : aBlahBlah
local variable : blahBlah
constant : BLAH_BLAH
class : BlahBlah
interface : BlahBlah (same as class)
The return value of a method is sometimes given a conventional name as well.

No comments:

Post a Comment