On 04/08/2007, at 4:07 AM, Kevin Menard wrote:

How much longer is 1.4 going to be the target platform?

Interesting because I am in the middle of a process of taking our biggest piece of software (around 100,000 lines of code) and generifying [1] it for 1.5. The decision was made to abandon 1.4 since we will no longer support OSX 10.3 (which only had JDK1.4) once 10.5 is released later this year.

However Cayenne does need to support a wider range of possibilities, particularly in conservative server environments where upgrades are slow to happen. I know that on the servers in our colo facility we still run 1.4 only because it works nicely with the installed WebObjects deployments and I don't like touching things that are working. But upgrades are likely this year for other reasons.

This process of adding generics to our application has been very instructive. Our application deals with Lists and Maps of entities in very many places and so generics make the the code much more readable and robust. But the weak point is in the lists we get back from Cayenne (mostly returned from queries) not being typed.

However, if I've learnt something else about this process it is that Java generics are slippery things. You can't always just add a couple of <keywords> to your code and be done with it. In some cases it requires rethinking the API itself to make it work well. The guy who wrote some of the Collection classes in the JDK thinks so [2]. And we may need to add some extra class parameters to parts of the API.

From a personal point of view I'd love to see Cayenne move to 1.5. It would help with my own work. But I don't know whether that is the best thing for the product and all its users. Perhaps that should be focus of 4.0 rather than the 3.0 version which is already more than halfway to completion.

Ari



[1] is that a word?
[2] http://gafter.blogspot.com/2004/09/puzzling-through-erasure- answer.html


-------------------------->
Aristedes Maniatis
phone +61 2 9660 9700
PGP fingerprint 08 57 20 4B 80 69 59 E2  A9 BF 2D 48 C2 20 0C C8


Attachment: PGP.sig
Description: This is a digitally signed message part

Reply via email to