On 4/5/07, Greg Reddin <[EMAIL PROTECTED]> wrote:

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.


Do you use "if (foo == true)", then? ;-) If not, why not?

 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 :-)


Frankly, if someone wants to pander to people who don't know the language
and don't want to, they should be writing in Pascal, not Java. ;-)

--
Martin Cooper


Greg

Reply via email to