Saturday, June 21, 2014

Migrating to Java Language

It's not rocket science, but it is a bit verbose

1. You cannot manage for anything beyond a toy project without an IDE. The very first thing you should do is download a popular Java IDE (Eclipse is a fine choice, but there are also alternatives including Netbeans and IntelliJ).
   You will be living in a cave and not realising it. Once you're up to speed with even basic IDE functions you will be literally dozens of times more poductive than without an IDE.

2. Learn how to layout a simple project structure and packages.
   There will be simple walkthroughs of how to do this on the Eclipse site or elsewhere. Never put anything into the default package.

3. Learn Java's generics 

4. Understand how Java's GC works. Just google "mark and sweep" - at first, you can just settle for the naivest mental model and then learn the details of how a modern production GC would do it later.

5.The core of the Collections API should be learned without delay. Map / HashMap, List / ArrayList & LinkedList and Set should be enough to get going.

6.Learn modern Java concurrency. Thread is an assembly-language level primitive compared to some of the cool stuff in java.util.concurrent. Learn ConcurrentHashMap, Atomic*, Lock, Condition, CountDownLatch, BlockingQueue and the threadpools from Executors. Try read some Good Java books ( By Joshua Bloch, Kathy Sierra, Head First Series or Black Book) . 

Buy these two books to start with :
1.The JavaTM Programming Language, (4th Edition) Ken Arnold, James Gosling, Davis Holmes
2.Effective Java (2nd Edition), Joshua Bosh

Contact me at shakir@jtechnova.com   / www.jtechnova.com