The latest version of the 'default' google analyser settings emit the warning:
Omit type annotations for local variables (omit_local_variables_types).
In many cases this improves the readability of code by removing redundant information.
e.g.
var i = 1;
The removal of the type (int) here doesn't affect the codes readability as the type of i
is obvious.
There are however many cases where removing the type actually makes the code harder to read and for a human to do static analysis.
e.g.
var code = _extractCode(monetaryAmount, codeLength);
There is no information on this line that tells a reader what type 'code' is.
The lack of type information forces the reader to stop and check what type _extractCode returns.
If you are analysing a class of some complexity, having to stop and check the type of numerous variables significantly slows down the process.
In a world of auto completion the reduction of a type to 'var' provides little reduction in typing.
The only other argument for reducing a type to 'var' is visual clutter.
Reduction in visual clutter should focus on removing redundant information, in the examples given the information being removed is not redundant.
I would suggest that the Omit type annotations warning should only be emitted when it is obvious what the type is.