tags:

views:

196

answers:

3

I would like to start learning Java, but there are so many resources out there... I am having a hard time deciding which path to take. I saw a neat book, Objects First with Java, and I tested out Bluej and some tutorials. Anyone use this and have comments?

+4  A: 

Back in College, my Data Structures professor had us learn Java on BlueJ. IIRC, it's supposed to make Java and OO concepts in general easy to learn. It's been something like 7 years since I used it, so it may have changed over the years.

Have you done programming in other languages before? Have you done Object Oriented Programming before? If you answered yes to these questions, then you should probably just jump in with one the "standard" Java IDEs - Eclipse, NetBeans, IntelliJ, etc...

(IDE = Integrated Development Environment - Basically, a program that helps you write code)

If this is your first foray into programming, there might be a case for learning with BlueJ. BlueJ doesn't have as many features to overwhelm you. It has graphical views that might make it easier to "see" OO concepts like object inheritance. BlueJ was created with the purpose of teaching Java, so I'd assume that it's a little easier to learn than its competition, but I can't really say that for sure.

I don't have any "bad" memories of BlueJ, but keep in mind that if you continue on with Java, you'll almost certainly outgrow BlueJ and need to move on to a more fully-featured IDE.

Since you'll probably switch to something like Eclipse later anyway, you could just start with it, and then you won't have to learn a new IDE later. However, the dizzying number of features offered might be overwhelming to a beginner.

Really, the decision comes down to personal choice. There's not really a right or wrong answer. The most important part is that you start writing some Java code! The program you write it in is less important. You can write code in Notepad if you want - just get out there and start coding!

And if you have questions on Java, feel free to come right back here and ask more questions.

Good Luck!

Disclaimer: I wouldn't actually recommend writing code in Notepad, but it is certainly possible :)

Jon Quarfoth
Good answer - but my +1 was reluctant: "You can write code in Notepad if you want" :)
Cam
Yeah, I suppose I probably shouldn't encourage beginners to start with Notepad. Learning to program can be difficult even with GOOD tools. I've added a disclaimer :)
Jon Quarfoth
Thanks for the answer. I know some basic web dev tools, like HTML, XML, CSS, JavaScript, but no hard programming, other than dabbling with Ruby on Rails. I think Bluej will be a good place to start.
lions_leash
+2  A: 

After you learn how to use javac there is no need for things like BlueJ, in my opinion.

That's why one of the best IDEs (Eclipse) has made a subproject for educational purposes - eclipse4edu.

This stripped version of eclipse has two advantages:

  • you don't have to face the "big monster" in the beginning. Eclipse is a complicated IDE and you will have hard time if you are to learn all of its features. Thus the focus on learning to program may be lost
  • you still use Eclipse, so whenever the time comes to make something real, you will be more prepared.
Bozho
A: 

BlueJ is best Java IDE to learn and teach object-oriented programming and Java. and an Best IDE to show classes relationship and their Interfaces !!

javatechi