Home > Java, Miscellaneous > Learn fundamental of Java ? Use ancient JDK

Learn fundamental of Java ? Use ancient JDK

Many Java developers are categorized as a good one in developing program using Java. But, i met so many of them are weak and less in java fundamentals itself. They can develop new program easily. But when i asked, what happening in background of java itself. Only few of them can explain it goodly and in appropriate way. Start to investigate what happening with them, reflecting they are not a newbie as Java Developer, 2 or 3 years in field experience.

After some research about situation and background of few developers. I can pull out my own conclusion, they are facing some fundamental problems because they are started to code using JDK 1.5, i classified this version as modern JDK. In 1.5 and later there are boxing-unboxing feature to make easier relationship between primitive and its wrapper, foreach loop statement to make looping process simpler. We wouldn’t see those things in 1.4. In 1.4 we have to use primitive data types and the wrapper explicitly and we still have to do explicit type-casting instead of using foreach. In my simple words: “Almost everything run by write it!”.

I’m not saying here that manual is the best way to do everything, but i found many cases during my professional experience, that with manual ways, we can learn how one process in a code could be done and doing analytic about whats happening with the code.

For the simplest example, look at between 2 pieces of code.

  • int myNumber = new Integer(10);
  • int mySecondNumber = 10;

On JDK 1,5 those codes will produce exact results. Nothing error and nothing produce runtime  exception. I give simple question to some people that declared as Java Developer. Only few of them can give me satisfaction answer.

Now with JDK 1.4 one of those 2 codes will produce error. The first one will produce compilation error. Meanwhile with 1.5, the first one will run perfectly but the code will take some unnecessary processes, means the code will use some space of memory for useless thing.

And yet another example,

  • List<SomeClass> myList= new ArrayList<SomeClass>();
  • List mySecondList= new ArrayList();

Whats the difference between both lists? well the most common answer i got only, “You can use foreach for myList but not to mySecondList”, well the answer is right, i wont hesitate about that. But still, the answer i got wasn’t the answer that i looking for. I’m looking for deeper answer, fundamentally.

For the ancient one, i still give 1.4 my humble recommendation. Maybe it’s a little bias because i started my java code using 1.4, forgive me for this. And please dont take me wrong, i’m not saying that the latest JDK is bad or automatic process is bad. I believe in thought that Java Architects have done very good job by providing simplicity and easiness in use of Java. But still, responsibility to know Java in fundamental way itself still be ours.

So, if you want to know better about Java Fundamental, maybe you should try ancient JDK. Watch and learn the process. And spread your own knowledge.

Well, i wouldn’t give you the answer for the differences of my codes above. Let it be your tasks, considered this is your homework 🙂

And for the last, this article based on my truly experience so maybe the content wont fit you at all. Please share your own or give me correction if you are thinking my article is too cheesy, old-style or maybe too idealist. Im glad to read from you soon 🙂

Categories: Java, Miscellaneous
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: