Ken Arnold hat einen ketzerischen Kommentar zu Genrics in Java 5 geschrieben. Ich selbst hatte und habe mit dem neuen Sprachfeature seit Beginn der Diskussion um ihre Einführung ebenfalls Bauchschmerzen hinsichtlich der Komplexität, die damit in der Sprache Einzug hält. Ich habe immer noch nicht ganz verstanden, warum so viele dieses Feature verlangen. So als schreiben sie mit Generics plötzlich bessere, stabilere und coolere Software.
Ich selbst arbeite jetzt seit knapp 10 Jahren mit Java und habe das Feature noch nicht vermisst, obwohl ich es durchaus aus der C++ Welt kenne. Ich kann mich nicht daran erinnern auch nur einmal ein casting-Problem gehabt zu haben, wenn ich mit Collections arbeitete. Und damit arbeiten wir schliesslich täglich. Wenn man sauber arbeitet, ordentlich dokumentiert, dann kann mit dem bisherigen System eigentlich nichts schief gehen. Ergo verführen Generics zum schlampigeren Arbeiten. In Zukunft werden dann eben nicht mehr Zwischenklassen herausgegeben, die zugegebenermassen, die Klassenmenge aufblähen können, sondern gleich Collections zurück geliefert. Vielleicht kein Problem. Allerdings haben auch Collections ihre nicht ganz unerheblichen Tücken, wenn sie in einer API plötzlich frei verwendet werden können und vielleicht Teile der inneren Datenrepräsentation einer Klasse nach aussen liefern.
Der Einsatzbereich für Generics ist allerdings eher begrenzt. Es wird erheblich mehr Entwickler geben, die generische Klassen verwenden, als solche, die wirklich welche schreiben. Insofern werden die Probleme mit Generics selbst vermutlich nicht allzu gravierend sein. Dafür werden sich andere Fehler in die Software einschleichen.
