Thursday, November 03, 2005

Java 5 Programmer Upgrade Exam

Yay, I'm now a also a certified programmer for the 1.5 version of the Java platform.

I was glad to see that Prometric has introduced a new type of question since I last took an exam (which was the 1.4 programmer upgrade). With this new type of question you're supposed to place the correct code snippet on the right place in a code "template" or place a statement on the right code block. I was also very pleased to see an increasing, both in amount and diffictulty, of questions on polymorphism and encapsulation.

In Java certification land in general Sun has introduced a new certification since I last had a look at the site, Sun Certified Associate. It seems to be som kind of I know the fundamental parts that makes up the Java platform, as stated on the Sun Certification site "This worldwide credential validates basic knowledge of Object-Oriented Concepts, UML representation of OO concepts, the Java programming language, and general knowledge of Java Platforms and Technologies". Personally I'd like to see something like Java Advanced Developer which I think should be designed the same way as the existing Java Developer certification (which I found immensely fun to do) but would concentrate more on advanced topics such as concurrency and advanced object orientation, patterns and principles.

During my preparations before the upgrade exam, ehm, that sounds more impressive than it was. I sat down monday evening and went through the new features in Java 5 in a haste. Anyway, during my preparations I got my first real chance to work with the feature and reassess my opinions which up to this time were based mostly on articles and code snippets. So here's my personal opinions on the features:

Generics
+ Sine Java is a staticly typed language I'd say this is good
- Deep levels of nesting and various other generic "tricks" is definetly going to confuse a lot of people

Static imports
+ I don't yet see any advantage with this
- I'd say it makes the code harder to read since it's not obvious where a static field belongs I'd prefer the fully qualified way

Boxing
Whatever :)

The enhanced for loop
+ Great
- I think they'd should've reserved in as a keyword and named it foreach()

Type safe enumerations
n/a I've not had the time to play with this enough. My first reaction was something like "why, oh why!" but I'm wondering wether this may actually be justified since Java is staticly typed but that's just my gut feeling right now.

Other than that I'm of course very pleased that Doug Lea's concurrency utils got included as java.util.concurrent

0 Comments:

Post a Comment

<< Home