There have been several posts that ask (directly or indirectly) the question of when will J2SE 5 "go mainstream," meaning when will it be used by a majority of programmers doing real development. The question is valid, but the only safe answer is "soon."
However, that question prompts another: When J2SE 5 does "go mainstream", will the majority of Java programmers be ready for it?
It is my sense that many Java programmers have yet to realize just how much version 5 changes the way that Java code is written. Right now, it seems that many programmers are saying something like "Well, my environment still requires 1.4, so there is no point in getting up to speed on 5.0 right now. I'll wait until I need to change." The problem with this type of thinking is that many of the 5.0 features are not learned overnight. This is especially true of generics and metatdata. Even enumerations require a bit of serious study to use to their maximum potential. The same goes for the Concurrency API.
J2SE 5 adds substantial power to Java, but it also adds complexity. To skillfully wield this new power requires experience and subtlety of understanding. These can only be gained by learning and experimenting with these new features now, before one needs to apply them to production code. If necessary, experiment in your spare time or on the week-ends.
It has been and is still my strong position that Java programmers who want to stay at the top of their profession must aggressively move to J2SE 5. The J2SE 5 release is a watershed event in the history of Java. Those programmers who fail to make the transition will find themselves at an increasing disadvantage.
For an overview of the new features in J2SE 5 and why they are important, see The Tiger Awakes [ March 16, 2005: Message edited by: Herb Schildt ]
For my latest books on Java, including Introducing JavaFX 8 Programming, see HerbSchildt.com
This is absolutely correct. Some of us have to learn the new features even when we can not apply them in our corrent projects. Personally, could not because my application is being hosted on IBM servers and IBM is yet to come out with their own 1.5 JVM. which means that one is going to relearn anyway, at some time in the future; Geees... so much to learn and re-learn.
Originally posted by Herb Schildt: ... It is my sense that many Java programmers have yet to realize just how much version 5 changes the way that Java code is written...
Absolutely! I now find it very difficult to not use 5.0. And the code is different enough so that I'm putting off buying a Mac until the new Mac OS is available (which will presumably include Java 5.0).
Incidentally, my basis for learning 5.0 was Mr. Schildt's Java 2 v5.0 (Tiger) - New Features, which I've read twice.
"We're kind of on the level of crossword puzzle writers... And no one ever goes to them and gives them an award." ~Joe Strummer sscce.org
Originally posted by Herb Schildt: It has been and is still my strong position that Java programmers who want to stay at the top of their profession must aggressively move to J2SE 5. The J2SE 5 release is a watershed event in the history of Java. Those programmers who fail to make the transition will find themselves at an increasing disadvantage.
I agree with this. However moving mentally and on pet projects are different than moving at work. Until something is used in most companies, I wouldn't call it "mainstream."
Herb, We use "JBuilder 2005" as our IDE at work. Although it claims to support J2SE 5.0, when I downloaded and installed JDK 1.5, "JBuilder" suddenly stopped working. I saw on the JBuilder newsgroups that other people are experiencing this same problem, but I couldn't find a satisfactory solution.
So rather than waste time investigating this matter, I decided to remove JDK 1.5 and wait until Borland release a version of "JBuilder" that is built on JDK 1.5
Also, I am using OC4J -- which is still only compatible with JDK 1.4 (although they claim that a JDK 1.5 compatible version will be available this summer).
How can I get "JBuilder" (and OC4J) to work with JDK 1.5 installed on my machine?
JBuilder 2005 works perfectly well with JDK 5. I'm using both of them together on several machines right now (though generating 1.4 bytecode for the main project)....
What did you do to cause JB to fail? Remember that JB2005 itself runs (and depends) on a 1.4 JVM which it includes, so you shouldn't install the Sun 1.5 on top of that. Install it to a different location instead.
Originally posted by Vedhas Pitkar: I wonder how many programmers are using the new features in Java 1.4??
This might sound cynical but is sadly true. Development/Production environments are almost all times decided by people at helm who are not always keeping themselves updated. Then there are conditions dictaed by the customer himself. I wonder how many have gone beyond JDK1.3. No offense, but all this seems good enuff for "personal upliftment".
i think most java practitioners are dependent on the JDK support in web application servers. the one i use is only just 1.4something, and the current version on which our product runs in 1.3
Joined: Sep 05, 2003
One thing about using the new features in a language is knowledge of the existence of such feature. I once had a colleague tring to get the values in his map display in the order they were inserted; this was not possible because HashMap uses hash values for storage; mere knowledge of the exisence of LinkedHashMap which is a new feature introduced with 1.4 saved him from the frustration he was going through. Ignorance is when one does not know and makes no effort to know.
Joined: Oct 12, 2000
true. I have taken to just browsing the API docs for an hour or so a week, just looking if there's something that might come in handy some day.
Plus of course buying way too many books and not reading half of them