Java 1.5.0 really looks like a great upgrade. Generics is a very good thing. No longer needed to cast stuff all the time. Static imports also nice. writing ‘System.out.println(“”);’ is something I will never do again! The enhanced for loop is also nice, make the code look more clean. Nice work Sun!!
People have concentrated on the feature improvements, but Sun were claiming something like 20% speed improvements, how are they intending to implement this, given that java is pretty damn fast already with JIT and generational gc.
I started using VC++ at work and Eclipse at home recently. Both these development systems are very nice however my biggest surprise was just how good Eclipse is. I never realised just how far Java has come. The IDE is fantastic to work with – really impressed. I guess it’s thanks IBM?!
“Hopefully, the day MS will buy out Sun, we will not listen this argument anymore “
IBM and the rest of the computer industry would not tolerate that. The thought of MS controlling Java would just be not on for them. They would push hard enough to initiate anti-trust action against MS. Also given Sun’s patent grant on Java there is nothing to stop IBM producing a clean room open source JVM licensed under its CPL if it felt it neccessary.
I think Microsoft and Sun are friends in the “keep your friends close, but keep your enemies closer” sort of way.
I still want it to be open source, and I program in it daily. I would certainly understand if they had strict controls on the name though, license wise.
Ah, but it’s even more messed up than that. It’s Java 2 SE v. 5.0! Some things are so great that one version number just isn’t enough.
Sun’s haphazard method of versioning for Java has always bugged me. Not only is it silly and non-standard, it also makes talking to non-techincal people about it even harder.
Dev: “There are some issues with Java 1.4_3 regarding … that cause stability problems in our apps.”
Non-tech: “Well, why don’t we just upgrade? They have Java 2 out you know!”
Come on, do not stick with the naming scheme (ok, lets say naming shame ). Focus on the new stuff. here is a snippet from one of core developers blog:
———————
The Tiger Release Candidate shipped earlier today.
Even more amazingly, our QA team is happy with it!
Our hard-working QA team recently presented a summary of their results based on the near-final builds of Tiger. Overall this is looking to be the most stable and reliable JDK that we’ve ever shipped. Here are the highlights of their report:
* Applet compatibility We test a set of over 400 applets, nearly all of which are external, to make sure that they run as well on Tiger as they do on any other popular VM, most especially the old and somewhat quirky VM from Microsoft. 97% of these tests pass, which is a much higher fraction than for any previous JDK release. The few failures are mostly due to applets that are relying on behavior that’s outside the scope of the J2SE specification.
* Reliability We run a set of five large server-class applications, including Sun’s own application server, another well-known application server, and Tomcat, on some big iron under heavy load to see how long they stay up. As of this writing they’ve been up and running continuously for 28 days — at some point we’ll have to decide when to shut them off. This is a much longer uptime than we’ve achieved in previous releases.
* Conformance The 1.5 JCK (Java Compatibility Kit) contains a whopping 45,194 tests (for comparison, the 1.4.2 JCK had a mere 27,309 tests). Tiger passes all of them.
* Regression tests These are tests written by development engineers to make sure that a bug gets fixed and stays fixed. 99.7% of the tests in the regression-test suite pass. We’ve carefully reviewed the few failures, and in all cases we decided that the risk of fixing them at this late stage outweighs their relatively small end-user impact.
* Functional tests These are tests written by quality engineers to test the overall functionality of the JDK. 99.7% of the tests in the functional-test suite pass. As with the failing regression tests, fixing the few remaining failures is just not worth the risk right now.
A total of 8,002 features, enhancements, and bug fixes were integrated into Tiger, so when I step back and think about it this way I’m fairly amazed that it’s working so well.
Tiger is the highest-quality JDK that we’ve ever built. Is it perfect? No, of course not. There are no doubt still some bugs lurking, but hopefully none is too serious. If Tiger quality is important to you then please download and test the release candidate and let us know right away if something’s wrong. The next couple of weeks are our last chance to fix any thermonuclear, hair-on-fire, sky-is-falling showstopper bugs.
> As of this writing they’ve been up and running continuously for 28 days — at some point we’ll have to decide when to shut them off. ****This is a much longer uptime than we’ve achieved in previous releases.****
Does that set off alarms to anyone else? 28 days really is not that long of a time, and if this is the BEST they have ever produced in uptime … is that suppose to make me happy or scared?
Primitive types are internally stored as their object equivalent, so e.g. a List<int> in java will be much slower and less memory-efficient than a List<int> in .NET.
Man, don’t press your luck – you know as well as I know that if Sun goes tinkering inside of the VM for any major improvements like that they’re gonna start breaking shit.
I don’t mind waiting for the new jdk if they can fix some more bugs.
In fact some bugs that was fixed in the beta has reappeared in the release candidate. One example is that you can’t fully use dead keys on Linux having European keyboards. On my Swedish keyboard it means that I can’t type “~” in JTextFields or JTextAreas.
It took Sun 5 years to fix this in JDK1.5beta2, and now its broken again. In the mean time the bug has been opened and closed numerous times as the problem have been partially fixed.
As it turns out, during half of its life, Java have been a platform independent platform only as long as you run it on windows. This tells you something of Sun quality process. No wonder people go for .net.
tuttle: bring it on, java kicks .Net “anywhere” (All platforms), any time (bring some real benchmarks, with collections..). This is the only thing .Net people says against Java in alll the OSNEws articles. like a kid: (our generics while stoting primitives same but we are more efficent down the hood).. who cares if java is still faster, more portable and more stable in general.. get a life.
“For instance, without identifying the author, the Justice Department filing quotes an internal Microsoft document as saying that the “strategic objective” was to “kill cross-platform Java by grow[ing] the polluted Java market.”
Well, to me it looks like Netbeans released v4.0 BETA today. That makes a slightly difference.
for Java Five SDK and NetBeans 4.0 , final releases.
Good news for java developers, indeed.
Java 1.5.0 really looks like a great upgrade. Generics is a very good thing. No longer needed to cast stuff all the time. Static imports also nice. writing ‘System.out.println(“”);’ is something I will never do again! The enhanced for loop is also nice, make the code look more clean. Nice work Sun!!
People have concentrated on the feature improvements, but Sun were claiming something like 20% speed improvements, how are they intending to implement this, given that java is pretty damn fast already with JIT and generational gc.
I started using VC++ at work and Eclipse at home recently. Both these development systems are very nice however my biggest surprise was just how good Eclipse is. I never realised just how far Java has come. The IDE is fantastic to work with – really impressed. I guess it’s thanks IBM?!
And?
Probably never will change.
Java is free as in beer. If you want GNU’s redefinition of ‘free’, visit
http://kaffe.org/
>”Yes, the only thing that has not changed is the licence, still not Open Source….”
And Microsoft still cannot pollute it
Most of us do not want it to be Open Source. In fact, all the programmers I *know* do not want it Open Source.
Marcus, I’m getting really tired of hearing the argument that if Sun were to open source Java, M$ would steal it, pollute it, whatever.
Funny how no one has stolen Linux or Apache or Open Office yet and done the same you are implying could be done with an open source Java.
“Hopefully, the day MS will buy out Sun, we will not listen this argument anymore “
IBM and the rest of the computer industry would not tolerate that. The thought of MS controlling Java would just be not on for them. They would push hard enough to initiate anti-trust action against MS. Also given Sun’s patent grant on Java there is nothing to stop IBM producing a clean room open source JVM licensed under its CPL if it felt it neccessary.
I think Microsoft and Sun are friends in the “keep your friends close, but keep your enemies closer” sort of way.
I still want it to be open source, and I program in it daily. I would certainly understand if they had strict controls on the name though, license wise.
> writing ‘System.out.println(“”);’ is something I will never do again!
There is some new feature that allows us to do the some put more cleanly? I’ve missed it for sure…
And how do you do such thing?
I love their versioning scheme..
“It’s such a HUGE improvement we’re going from 1.4 to 5.0!”
I’m sure there is a nicer way, but one solution would be to use the new static import feature:
import static java.lang.System.out;
…
out.println(“output without System.”);
Almost. Major point releases take on the name of the point. For instance, Java 2 (1.2) and now Java 5 (1.5).
for the detailed new features, go here.
http://java.sun.com/j2se/1.5.0/docs/relnotes/features.html
and for the System.out.println, in IDEA just write “sout” and press tab.. static imports are no big deal..
Ah, but it’s even more messed up than that. It’s Java 2 SE v. 5.0! Some things are so great that one version number just isn’t enough.
Sun’s haphazard method of versioning for Java has always bugged me. Not only is it silly and non-standard, it also makes talking to non-techincal people about it even harder.
Dev: “There are some issues with Java 1.4_3 regarding … that cause stability problems in our apps.”
Non-tech: “Well, why don’t we just upgrade? They have Java 2 out you know!”
Dev: cries, shoots self
Come on, do not stick with the naming scheme (ok, lets say naming shame ). Focus on the new stuff. here is a snippet from one of core developers blog:
———————
The Tiger Release Candidate shipped earlier today.
Even more amazingly, our QA team is happy with it!
Our hard-working QA team recently presented a summary of their results based on the near-final builds of Tiger. Overall this is looking to be the most stable and reliable JDK that we’ve ever shipped. Here are the highlights of their report:
* Applet compatibility We test a set of over 400 applets, nearly all of which are external, to make sure that they run as well on Tiger as they do on any other popular VM, most especially the old and somewhat quirky VM from Microsoft. 97% of these tests pass, which is a much higher fraction than for any previous JDK release. The few failures are mostly due to applets that are relying on behavior that’s outside the scope of the J2SE specification.
* Reliability We run a set of five large server-class applications, including Sun’s own application server, another well-known application server, and Tomcat, on some big iron under heavy load to see how long they stay up. As of this writing they’ve been up and running continuously for 28 days — at some point we’ll have to decide when to shut them off. This is a much longer uptime than we’ve achieved in previous releases.
* Conformance The 1.5 JCK (Java Compatibility Kit) contains a whopping 45,194 tests (for comparison, the 1.4.2 JCK had a mere 27,309 tests). Tiger passes all of them.
* Regression tests These are tests written by development engineers to make sure that a bug gets fixed and stays fixed. 99.7% of the tests in the regression-test suite pass. We’ve carefully reviewed the few failures, and in all cases we decided that the risk of fixing them at this late stage outweighs their relatively small end-user impact.
* Functional tests These are tests written by quality engineers to test the overall functionality of the JDK. 99.7% of the tests in the functional-test suite pass. As with the failing regression tests, fixing the few remaining failures is just not worth the risk right now.
A total of 8,002 features, enhancements, and bug fixes were integrated into Tiger, so when I step back and think about it this way I’m fairly amazed that it’s working so well.
Tiger is the highest-quality JDK that we’ve ever built. Is it perfect? No, of course not. There are no doubt still some bugs lurking, but hopefully none is too serious. If Tiger quality is important to you then please download and test the release candidate and let us know right away if something’s wrong. The next couple of weeks are our last chance to fix any thermonuclear, hair-on-fire, sky-is-falling showstopper bugs.
Actually, it’s even worse.
This is actually “Version 1.5.0 of the Java 2 Platform Standard Edition 5”, according to
http://java.sun.com/j2se/1.5.0/docs/relnotes/features.html.
I can’t wait until 1.5.1_03 of Java 2 JDK 5.0.1 is out…
> As of this writing they’ve been up and running continuously for 28 days — at some point we’ll have to decide when to shut them off. ****This is a much longer uptime than we’ve achieved in previous releases.****
Does that set off alarms to anyone else? 28 days really is not that long of a time, and if this is the BEST they have ever produced in uptime … is that suppose to make me happy or scared?
import static java.lang.System.out;
out.prinln(“hello world”)
Swing got a swift kick to the pants and on Linux its now OpenGL accelerated (I don’t know if its default setting yet)… that’s just cool!
<em>Swing got a swift kick to the pants</em>
what do you mean?
<em>and on Linux its now OpenGL accelerated</em>
where did you read this? is it software or hardware?
Anyone else finding the OpenGL Slower? Could be my drivers…
And for the changes in 1.5, we can all thank healthy competition from .NET which of course already has the features previously mentioned.
Primitive types are internally stored as their object equivalent, so e.g. a List<int> in java will be much slower and less memory-efficient than a List<int> in .NET.
Man, don’t press your luck – you know as well as I know that if Sun goes tinkering inside of the VM for any major improvements like that they’re gonna start breaking shit.
same for netbeans. and stop this comparisons with NET. simply i don’t smoke MS F… NET
the major improvments of this release is that tiger is slow
like the previous.
.NET/mono is more fast
I don’t mind waiting for the new jdk if they can fix some more bugs.
In fact some bugs that was fixed in the beta has reappeared in the release candidate. One example is that you can’t fully use dead keys on Linux having European keyboards. On my Swedish keyboard it means that I can’t type “~” in JTextFields or JTextAreas.
It took Sun 5 years to fix this in JDK1.5beta2, and now its broken again. In the mean time the bug has been opened and closed numerous times as the problem have been partially fixed.
As it turns out, during half of its life, Java have been a platform independent platform only as long as you run it on windows. This tells you something of Sun quality process. No wonder people go for .net.
tuttle: bring it on, java kicks .Net “anywhere” (All platforms), any time (bring some real benchmarks, with collections..). This is the only thing .Net people says against Java in alll the OSNEws articles. like a kid: (our generics while stoting primitives same but we are more efficent down the hood).. who cares if java is still faster, more portable and more stable in general.. get a life.
According to the following article
http://www.infoworld.com/cgi-bin/displayStory.pl?980520.wcmswords.h…
“For instance, without identifying the author, the Justice Department filing quotes an internal Microsoft document as saying that the “strategic objective” was to “kill cross-platform Java by grow[ing] the polluted Java market.”