Add component history

git-svn-id: https://svn.apache.org/repos/asf/jakarta/commons/proper/collections/trunk@131583 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Stephen Colebourne 2004-01-31 01:33:00 +00:00
parent 6a60645c40
commit d05964c012
2 changed files with 74 additions and 0 deletions

73
xdocs/history.xml Normal file
View File

@ -0,0 +1,73 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<document>
<properties>
<title>Commons Collections - History</title>
<author email="commons-dev@jakarta.apache.org">Commons Documentation Team</author>
</properties>
<body>
<section name="History of Commons Collections">
<p>
Commons-Collections is a classic example of an open-source project evolving over time.
This page documents some of the key stages.
</p>
<p>
<b>Collections 1.0</b> was a gathering of different Collection, Comparator, Iterator and
Utility classes written elsewhere in Jakarta.
At this stage, the component focussed mainly on getting re-use of code by making
everything avaialable together.
</p>
<p>
All classes were placed in one package except the comparators, which had their own subpackage.
</p>
<p>
<b>Collections 2.0</b> started the process of growth. The Bag interface was added with
various implementations. Also added were additional collections implementations.
</p>
<p>
All classes were placed in one package except the comparators, which had their own subpackage.
</p>
<p>
<b>Collections 2.1</b> increased the growth again. The Buffer interface was added, unifying
various previous implementations. Numerous decorators were added as inner classes that
behave like the unmodifiable or synchronized JDK decorators.
</p>
<p>
As the size of the component increased, the iterators were broken out into their own subpackage.
Thus there were now three packages, main, comparator and iterator.
</p>
<p>
<b>Collections 3.0</b> represents a re-birth of collections after an 18 month absence.
Many, many classes had been added to CVS but not released including primitive and
event-generating classes. In order to control the size of the collections distribution,
these became two new projects - primitives and events.
</p>
<p>
New interfaces BidiMap, MapIterator, ResettableIterator and KeyValue were added.
Also added were many new implementations of existing collections, especially Maps.
</p>
<p>
As more decorators were added the decision was taken to create a new subpackage for
the decorators (no more inner classes). However, it became clear that whether a class was
a decorator or not was not the most important division in finding a collection.
As a result of this, and the general ongoing growth in the component, a full subpackage
layout was chosen - one subpackage for each principal collections interface.
</p>
<p>
Essentially the 3.0 release represents the result of changing from a 'dumping ground'
of re-used collections to a component <b>designed</b> for the purpose.
Of course, backwards compatability has been retained during all transitions using deprecation.
</p>
</section>
</body>
</document>

View File

@ -20,6 +20,7 @@
<menu name="Commons Collections">
<item name="Overview" href="/index.html"/>
<item name="Users guide" href="/userguide.html"/>
<item name="History" href="/history.html"/>
<item name="Javadoc (3.0 release)" href="apidocs-COLLECTIONS_3_0/index.html"/>
<item name="Mailing lists" href="/mail-lists.html"/>
<item name="Team" href="/team-list.html"/>