Sheer laziness
Whereas naming issues isn’t laborious, it does take a little bit of thought. I assume some people simply don’t wish to take the time to consider naming issues. I’m not even going to speak about how foolish it’s to make use of a single letter for a variable identify. The one exception I’ll quarter is utilizing i because the variable in a loop. (However I’ll argue vehemently that Index is healthier.)
In any other case, give a variable a very good, full identify. Positive, it could take some effort, however if you happen to cease and ask, “What, precisely, is that this factor?” after which identify it primarily based on what your reply is, you’ll have a fantastic identify. For example, if you happen to really feel the necessity to do that:
If (EmployeeNumber > 0) and (OrderNumber > 0) {
// ...
}
Don’t be afraid to go the additional mile:
EmployeeIsValid = EmployeeUniqueIDInDatabase > 0;
ThereIsAnOrder = OrderNumber > 0;
ItIsOkayToProcessTheOrder := EmployeeIsValid and ThereIsAnOrder;
If ItIsOkayToProcessTheOrder {
// ...
}
That’s massively extra readable, and the variable names clearly clarify what they signify. It will be very laborious to confuse what is going on there, and it reduces the cognitive load of the following developer, who now not has to parse complicated boolean statements.