commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jonathan Carlson <>
Subject RE: [Collections] primitive pkg - was "Release potential?"
Date Tue, 20 Aug 2002 21:22:26 GMT
I'm sorry you seem to be feeling attacked.  I didn't mean
anything personal.  I'm just arguing what I have found to
be good design... and using interfaces for utility classes
is part of that.  

I'm OK if we don't implement the *List interfaces for this
release, but you seem to be saying it should be put off
indefinitely until there's another implementation, and I'm
just saying that there's a lot more to consider than that.


--- "Waldhoff, Rodney" <> wrote:
> > According to your logic, Sun should not have release
> the
> > List interface because there was only one
> implementation of
> > List: ArrayList.
> 1. Well, no, as a simple check of the 1.2 javadocs will
> show you, there were
> 3 concrete implementions of java.util.List in the first
> collections
> release--ArrayList, Vector, LinkedList, as well as some
> partially abstract
> implementions.
> 2. Apache isn't Sun.  Commons-collections isn't the JDK.
> Commons-collections isn't even java.util.*.  I don't
> think that a corporate
> entity creating a closed-source, platform-defining API
> (or for that matter,
> a specification to be implemented by multiple vendors on
> multiple platforms)
> with rather long release cycles is at all comparable to
> commons collections.
> Making backward compatible changes (like adding a new
> interface and
> declaring some of the existing classes to implement it)
> is cheap and easy,
> and anyone can do it at any time.  None of this is the
> case for Sun.
> > Interfaces also allow you to avoid bloated class
> > hierarchies that quickly become unmaintainable or
> > unextendable without adding an exponentially greater
> number
> > of subclasses every time you add a new feature.
> So adding a dozen interfaces with one implementation each
> is going to avoid
> a "bloated class hierarchy" here?  Adding additional
> layers of abstraction
> is?  How's that again? (Bonus points for quoting
> Effective Java in your
> response.)

Jonathan Carlson
Minneapolis, Minnesota

Do You Yahoo!?
HotJobs - Search Thousands of New Jobs

To unsubscribe, e-mail:   <>
For additional commands, e-mail: <>

View raw message