Il existe deux techniques principales pour la représentation de conteneurs. La première est de séparer totalement le conteneur des objets contenus. C'est aujourd'hui la technique la plus courante. La deuxième technique, autrefois très utilisée quand la mémoire coûtait beaucoup plus cher, consiste à coder le conteneur dans les objets contenus ; par exemple, dans un objet de type voiture on a un champ suivant qui permet de représenter une liste de voitures. Cette solution a plusieurs inconvénients :
Le seul avantage de cette technique est que la consommation de mémoire peut, dans certains cas, être réduite par rapport à la technique des conteneurs séparés. Comme le coût de la mémoire est relativement faible aujourd'hui et que les inconvénients de cette technique risquent de coûter cher en maintenance du logiciel, nous utilisons dans ce livre exclusivement la technique de la séparation.