Lots of static methods in an interface
Sam Pullara
spullara at gmail.com
Tue Sep 10 10:19:04 PDT 2013
The tabs at the top seem pretty good for now. I'm not too concerned about it.
Sam
On Sep 10, 2013, at 10:06 AM, Paul Benedict <pbenedict at apache.org> wrote:
> Zhong, Brian has often quipped there is a JavaDoc overhaul planned for Java
> 9. You'll have to stay tuned for a few years to see a better representation
> of things.
>
>
> On Tue, Sep 10, 2013 at 11:29 AM, Brian Goetz <brian.goetz at oracle.com>wrote:
>
>>> It seems that the standard lib is settling on the convention of
>>
>> I think "settling" is too strong a statement; more like "experimenting
>> to find the right equilibrium in the new world" is more accurate.
>>
>>> putting static methods directly in the relevant interface, e.g.
>>> Comparator, instead of in another companion class, e.g. Comparators. I
>>> was against it before but now I think it is great - no need to direct
>>> users to another place to look for related methods.
>>
>> Right. More generally, there are things to love about this approach (no
>> garbage side-classes, fewer "magic" place(s) to look for relevant static
>> methods), and things to worry about (messing up the interface with lots
>> of methods of varying relevance.) I think we should embrace both the
>> love and the worry.
>>
>> In reality, I think the two poles -- the "old way" (put everything in a
>> side class) and "put everything in the interface" are both probably
>> excessive extremes. The poster child for this tension is Collections;
>> do we really want *all* of these methods in Collection? Some are pretty
>> esoteric.
>>
>>> However I still find the javadoc landing page very messy:
>>>
>>>
>> http://download.java.net/jdk8/docs/api/java/util/Comparator.html#method_summary
>>>
>>> with static/abstract/default methods mixed together indiscriminately.
>>> Sure there are tabs, but there is no reason to give a bad first
>>> impression to users. Static/abstract/default methods are so different,
>>> does anybody really want an alphabetic index containing all of them?
>>
>> Agreed. This was a compromise we made for Java 8. There are sooo many
>> things that need to be improved about Javadoc, that we were wary of
>> getting mired; this is what we had the resources to do for now. Its not
>> perfect.
>>
>>
>>
>
>
> --
> Cheers,
> Paul
>
More information about the lambda-dev
mailing list