On 4/5/07, Martin Cooper <[EMAIL PROTECTED]> wrote:
2. The "public" redundant modifier is declared illegal in that > checkstyle file, but I think that it is not so bad. Here I disagree. IMHO, using 'public' in interfaces demonstrates a lack of clarity. It constitutes "noise" in the interface definition that hinders rapid comprehension. When someone reads through a set of interfaces and sees 'public' scattered around, they're likely to stop and wonder if the author had some purpose to specifying 'public' that they should try to understand, when in reality the author was simply not thinking clearly enough to translate their thoughts into accurate interface definitions. We should always strive for maximum communication bandwidth, and not clutter the code with things that readers will trip over and have to stop and wonder about.
Interesting. I've always preferred to be explicit and express things that are true by default. For example, I use "this." a lot (though probably not consistently enough to communicate anything). I can see your point but the lack of the public modifier would "hinder rapid comprehension" for me, just because I'm used to seeing it there. (To be real honest I didn't realize it was defaulted until I read this - though it makes sense). So should we cater to those who don't know the language well enough or cater to those who prefer language purit? Personally, I still prefer the former because I like being explicit, but I won't die on that hill. I'm willing to be convinced otherwise :-) Greg
