I've consistently used a class self-reference this
whether or not it is mandatory. I believe it helps the code readability as people who read it don't have to figure out on their own what scope the variable belongs to.
I would like to work similar with the static scope: precede all references to the static context with a static
keyword and so make the code a bit more self-explanatory.
Java, however, doesn't like it. I know I could technically use simply the class name, but this looks pretty ugly, especially when a class has got a lengthy name. I could also precede the names of static methods and attributes with a special prefix, but I wouldn't like to be considered a paranoiac.
Would you guys consider any of this a good OOP style? Or should I just completely forget about anything vide supra and let javac do all the scope-binding?
There are some conventions that prefix all uses of member fields (or even methods) with this
. There are also conventions for prefixing variable or class names (the infamous Hungarian notation). For example, official Android code style guidelines require prefixing private member field names with m-
(such as private int mSize
) and private static with s-
.
Personally, I hate both of these conventions, because they just clutter the already quite verbose Java code. Modern IDEs provide some means of visual differentiation. For example in Eclipse, local variables are in standard black font, whereas fields are in blue. Static methods or fields are in italics.
They also provide great ways how to navigate through the source code. Ctrl+clicking on name of a variable/method/type takes you right to its declaration. There are outline views. Eclipse even displays a tooltip with information about such thing just if you hover your mouse over it.
Yes, somebody might put the argument that you sometimes do not read code in the IDE, but in a simple text editor. I sometimes do that too for a quick look over the code, but honestly, whenever I want to do some serious coding, not using an IDE is just a masochism.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With