Since I'm back on this topic, here are some items I'd propose to
change. Yeah I know you can say they're small, but they get harder to
fix as time goes on. But nevertheless what do you think of...


1. serialVersionUID should not be used. The default serialization
mechanism errs on the side of considering differing class versions
serialization-incompatble. This is almost always completely fine.
Using serialVersionUID -- and forgetting to update it -- introduces
subtler runtime bugs. I prefer to never use it.

2. Javadoc that just read (non-javadoc) with a @see tag, or just has
[EMAIL PROTECTED], adds no value and can be removed.

3. UpdatableFloat/Long -- just use Float[1] / Long[1]? these classes
don't seem to be used.

4. floats to double? are there cases where storage is important enough
to sacrifice precision and CPU time?

5. BruteForceTravellingSalesman says "copyright Daniel Dwyer" -- can
this be replaced by the standard copyright header?

6. I never declare RuntimeException subclasses in a method signature.
They are not required and do not tell the compiler anything new. They
can be javadoc'ed of course. I don't feel strongly about it but do
slightly prefer to only declare checked exceptions in a signature for
clarity.

Reply via email to