commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <>
Subject [Jakarta-commons Wiki] Update of "Collections/GenericCollections" by StephenKestle
Date Thu, 22 Mar 2007 10:34:16 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Jakarta-commons Wiki" for change notification.

The following page has been changed by StephenKestle:

The comment on the change is:
Added new page for generics development

New page:
=== Page Guidelines ===

It is early days for this project.  Many ideas need to be put forward and debated.  For speed
and efficiency, this page will/should list all questions and design ideas and decisions. 
Where ideas have not reached consensus, "(needs debate)" will be appended.

= Purpose =

The new generics version of Commons Collections is designed to update the apis for use with
Java 5 and above.  As such it will use the type safety provided by generics, and will use
other new features as appropriate.

This is intended to be a complete rewrite, with every method and class considered as to it's
benefit and function.  New classes and concepts will be added.

'''If you know of any frustration that developers have with collections, this is your opportunity
to make a change - possibly for the next decade'''

== Backwards Compatibility ==

This release will be a "completely new" codebase and will offer very little binary compatibility
with previous releases.  All deprecated methods and classes will be removed, and return types
will be altered where it is seen fit to do so (see [

== Type safety ==

As stated above, generics will be used to ensure type safety of collection apis.  This renders
casting methods (!MapUtils.getDouble()) useless, and they will be deleted. 

However, classes and utilities that provide runtime type safety will probably stay in (needs

== Project base ==

There was consideration whether to build off the commons non-generic code, or the
generic code.  The decision has been made to work directly off the apache code:

 * the sf code attempted to maintain binary compatibility with the non-generic commons code.
 This release does not intend to have binary compatibility, and may be substantially different.
 * since this is a rewrite, all generic conversion decisions will be reconsidered, and starting
with an almost complete code base may actually hinder this.

= Development =

[wiki:/ProjectPlans Project Plans] outlines the direction of the development[[BR]]
[wiki:/DevelopmentGuidelines Development Guidelines] explains how the project is organised,
how to get started, and most importantly, how to ensure that your contributions do not pose
a burden to other developers[[BR]]
[wiki:/Contributors Contributors] lists the people who are currently helping out with the
project, and what they are working on[[BR]]

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

View raw message