• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

Learning Java?

Dougmeister

Senior member
For a programmer with several years of experience, where is a good place to start?

Sitepoint lists some good steps and I was wondering what you all thought about them. I'd be practicing for Windows development, maybe some Linux would be helpful, too.

1) Download the Java 2 Software Development Kit (SDK)

2) Use some Googled resources (any recommendations?0

3) Get a good book (O'Reilly, Java In A Nutshell)

4) Remember the list of free tools listed here at Anandtech

Other ideas?

Thoughts?
 
Java is going to be pretty similar to C# (I don't have too much Java experience, but syntactically they are very similar). I read "Head First: C#" when i was learning that, and I believe that there is a "Head First: Java". These books are geared towards the beginner/intermediate, so they might be below your level, but I would suggest them if you aren't terribly comfortable with principals of OOP.
 
Another good point. My OOP/OOD isn't what I'd like it to be. Mostly academic, and 6-12 months between my existing Java experience and part of one of my VB.NET projects.

Thanks for the input.

Anyone else?
 
As I recall, the main differences between Java and C# are:

1. Java has primitives. Just a few: int, char, long, float, double - I think that's it. You have "wrapper classes" like Integer and Char to make them look like Objects.
2. Instead of the MSDN library, you have the API documentation. Get used to this format! The upper-left pane is like the MSDN tree, but just with dots delineating the member packages. The root of the tree is the main package; whether the JavaDocs are used for the Core API or some other API you download. For a different version or something you need to go to a different page. The main left pane lists all classes under this tree node; while the right pane shows the documentation.

Now, if you know the basics of C#, you'll probably want to jump into writing a GUI. I don't see anything about AWT or Swing in my old copy of Java in a Nutshell, so you'll probably need another source. I'm not sure what's being used for Java desktop GUIs these days, but Java seems to like Swing, so you could try one of their tutorials.
 
you already have 6-12 months of java experience, it would be good for us to know which direction you want to pursuit. currently a lot of development are on the web/service oriented application side of things.

concur with the Eclipse (not MyEclipse, just eclipse).
 
I only want to learn it to be marketable, so I'm flexible. I have been doing web development for a while now and think I should continue, but am open to suggestions.
 
so for marketable i think EJB3 will be a good start. you will get familiar with annotations which will help you further down the road. After that you might want to start looking at some JSF stuff (pay attention to Facelets, it is what's hot right now), and then Richfaces or Seam.
 
Back
Top