This slashdot
posting points to an interview with Joshua Bloch on the
New
Language Features in JDK 1.5. Generics is a much awaited
enhancement. Today, without the language support, I ask every
programmer to minimally document the data type used in a comment,
like
Map userTable; // username(String) => UserRecord
Still many people fail to do just that. I have to track down the
usage of the collection to deduce what data type they are using :(
A generic declaration would be
Map<String, UserRecord> userTable;
This seems to keep Java collection's light-weight design. It
provides some compile time checking and implicit typecasting without
the complexity of C++'s template. I still remember spending a lot
time debugging the COMPILATION in C++. An compiler error message
would spend multiple lines with long and unreadable class names
decompose of a template instances...
One reader has pointed out the work on JSR 166 Concurrency
Utilities led by Doug Lea. Doug Lea's book Concurrent Programming in
Java and the programming library is definitive in this area. It
is great that it gets formalized and included in JDK.
2003.05.09 [software, java] -
comments