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.


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 COLLECTIONS-218).

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 debate).

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:


Project Plans outlines the direction of the development
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
Contributors lists the people who are currently helping out with the project, and what they are working on

Collections/GenericCollections (last edited 2009-09-20 23:48:39 by localhost)