Naked dot - accessing object fields through unqualified "." [C1]

Joseph D. Darcy Joe.Darcy at Sun.COM
Tue Mar 24 10:16:38 PDT 2009


Alexandre MAKARENKO wrote:
> Naked dot
>
> AUTHOR(S): MAKARENKO Alexandre
> OVERVIEW
> FEATURE SUMMARY: Accessing object fields through unqualified "."
>
> MAJOR ADVANTAGE: Obsoletes attribute naming conventions.
>
> MAJOR BENEFIT:  Makes Java programs visually more readable and eventually 
> less error-prone (see ?Strict mode? in details).
>
> To avoid name collisions and make source codes more maintainable 
> developers either hold with a convention for attribute names or prefix 
> members by ?this.? when refer to. Any naming convention, since not a part 
> of the language, offers only a weak distinction between local variable and 
> object field. Moreover it introduces extra characters and makes the source 
> code not very natural. Using ?this.? is absolutely safe but makes the 
> source code too much heavy. 
> Assessing object fields through unqualified ?.? may be an elegant 
> trade-off between readability and strictness.
>
> MAJOR DISADVANTAGE:  May look assemblish.
>
> ALTERNATIVES:
> Use "this.aField" or m_aField, or _aField, or any other naming convention 
> to distinguish between local variables and object fields.
>
> EXAMPLES
> public class Point
> {
>     public Point( double x, double y )
>     {
>         .x = x; // compiles like this.x = x;
>         .y = y; // compiles like this.y = y;
>     }
>     private double x, y;
> }
>   

I don't think being about to elide "this" in such situations would be 
very helpful; at least having to write out "this.x" gives some clear 
indication you aren't assigning x to itself!

-Joe



More information about the coin-dev mailing list