Aren't we saying the same thing? Each package should be cohesive. The debate is really about how you view the cohesiveness of the collections package. One view is that all the classes are collections related so one package is fine. Another is that each type of collection (map, list, etc) belong in their own packages.

I believe that commons-collections should mimic the standard java distribution and include all the classes in one package. If we had thousands of classes, I would think differently but we don't.

David



From: Henri Yandell <[EMAIL PROTECTED]>
Reply-To: "Jakarta Commons Developers List" <[EMAIL PROTECTED]>
To: Jakarta Commons Developers List <[EMAIL PROTECTED]>
Subject: Re: [collections] XxxUtils inner classes
Date: Wed, 2 Apr 2003 13:35:24 -0500 (EST)



I don't agree. It's all to do with stereotypes I think [not the programming term, the real world term].

Given a group of things, that go beyond some size [ie) all Java classes
are Java classes, why not put them all in java.*], you immediately look
for stereotypes to break them down into bite-sized chunks.

Something might start in one stereotype, ie) java.lang.Math is a Lang-like
standard thing, but as time goes by more things appear which have a
different stereotype in common with java.lang.Math and java.math.* is
created because Math now has more cohesion with these new classes than
with the others.

Similarily, java.util.* begins as a place for various useful components,
but as time goes by more and more of the members have 'structure' in
common than 'useful generic'. java.util.collection or java.collection then
should be born. As time continues to go by, it becomes apparant that Map
and Collection are largely parallel concepts with very little in common
[apart from Map using collections in a few places and both sharing
Iterator] and they find themselves splitting again. In fact, Iterator can
now go where it belongs in java.lang as a core feature :)

The problem here is the amount of pain the end-user gets in changed APIs.

All just my ignorant opinion,

Hen

On Wed, 2 Apr 2003, David Graham wrote:

> Well, the java.lang and java.util packages have many classes in them. All
> of the Java collections classes are in java.util not java.util.bag,
> java.util.map, etc.
>
> Number of classes is not the right benchmark for determining package size.
> The cohesion of the classes in the package is.
>
> David
>
>
>
> >From: Henri Yandell <[EMAIL PROTECTED]>
> >Reply-To: "Jakarta Commons Developers List"
> ><[EMAIL PROTECTED]>
> >To: Jakarta Commons Developers List <[EMAIL PROTECTED]>
> >Subject: Re: [collections] XxxUtils inner classes
> >Date: Wed, 2 Apr 2003 13:17:27 -0500 (EST)
> >
> >
> >I expected people to be unhappy with having hundreds of classes in one
> >package, even if most were hidden.
> >
> >I'm quite happy to deal with the spam though, so will scratch the
> >sub-package idea.
> >
> >Hen
> >
> >On Wed, 2 Apr 2003, David Graham wrote:
> >
> > > I see no problem with using just 1 package
> >org.apache.commons.collections.
> > > Sub-packages are not needed and violate the "package is the unit of
> >release"
> > > principle.
> > >
> > > David
> > >
> > >
> > >
> > > >From: Henri Yandell <[EMAIL PROTECTED]>
> > > >Reply-To: "Jakarta Commons Developers List"
> > > ><[EMAIL PROTECTED]>
> > > >To: Jakarta Commons Developers List <[EMAIL PROTECTED]>
> > > >Subject: Re: [collections] XxxUtils inner classes
> > > >Date: Wed, 2 Apr 2003 12:52:35 -0500 (EST)
> > > >
> > > >
> > > >So do we move to a structure in which each Utils class has its own
> > > >package?
> > > >
> > > >org.apache.commons.collections.CollectionsUtils, which also contains
> > > >Collection implementations and Collection features [the package-scoped
> > > >classes which hide inside CollectionUtils].
> > > >
> > > >org.apache.commons.collections.bag.BagUtils, and Bag interface, and Bag
> > > >implementations etc.
> > > >
> > > >org.apache.commons.collections.map.MapUtils ...
> > > >
> > > >and so on?
> > > >
> > > >Hen
> > > >
> > > >On Wed, 2 Apr 2003, Juozas Baliuka wrote:
> > > >
> > > > >
> > > > > +1, static public inner classes are not very usefull.
> > > > >
> > > > > ----- Original Message -----
> > > > > From: "Shapira, Yoav" <[EMAIL PROTECTED]>
> > > > > To: "Jakarta Commons Developers List"
> ><[EMAIL PROTECTED]>
> > > > > Sent: Wednesday, April 02, 2003 7:39 PM
> > > > > Subject: RE: [collections] XxxUtils inner classes
> > > > >
> > > > >
> > > > >
> > > > > Hi,
> > > > > Personally: at 1. I dislike inner classes ;)
> > > > >
> > > > > Yoav Shapira
> > > > > Millennium ChemInformatics
> > > > >
> > > > >
> > > > > >-----Original Message-----
> > > > > >From: Henri Yandell [mailto:[EMAIL PROTECTED]
> > > > > >Sent: Wednesday, April 02, 2003 12:37 PM
> > > > > >To: Jakarta Commons Developers List
> > > > > >Subject: [collections] XxxUtils inner classes
> > > > > >
> > > > > >
> > > > > >At what point is a Utils class considered to have too many inner
> > > > > classes?
> > > > > >For example, does no one else find the 1200 line MapUtils quite
> > > > > painful? :)
> > > > > >
> > > > > >
> > > > > >Hen
> > > > > >
> > > > > >
> > > > >
> > >---------------------------------------------------------------------
> > > > > >To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > > >For additional commands, e-mail:
> >[EMAIL PROTECTED]
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > This e-mail, including any attachments, is a confidential business
> > > > > communication, and may contain information that is confidential,
> > > >proprietary
> > > > > and/or privileged. This e-mail is intended only for the
> >individual(s)
> > > >to
> > > > > whom it is addressed, and may not be saved, copied, printed,
> >disclosed
> > > >or
> > > > > used by anyone else. If you are not the(an) intended recipient,
> >please
> > > > > immediately delete this e-mail from your computer system and notify
> >the
> > > > > sender. Thank you.
> > > > >
> > > > >
> > > > >
> >---------------------------------------------------------------------
> > > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > > >
> > > > >
> > > > >
> > > > >
> >---------------------------------------------------------------------
> > > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > > >
> > > >
> > > >
> > > >---------------------------------------------------------------------
> > > >To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > >For additional commands, e-mail: [EMAIL PROTECTED]
> > > >
> > >
> > >
> > > _________________________________________________________________
> > > MSN 8 with e-mail virus protection service: 2 months FREE*
> > > http://join.msn.com/?page=features/virus
> > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> >
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: [EMAIL PROTECTED]
> >For additional commands, e-mail: [EMAIL PROTECTED]
> >
>
>
> _________________________________________________________________
> Tired of spam? Get advanced junk mail protection with MSN 8.
> http://join.msn.com/?page=features/junkmail
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>



--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



_________________________________________________________________
MSN 8 helps eliminate e-mail viruses. Get 2 months FREE*. http://join.msn.com/?page=features/virus



--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to