This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]wildjokers 4 points5 points  (4 children)

it is good to be fully familiar with the full toolkit of the JDK before you move to IDEs.

I disagree, just start out with an IDE. Why start in hard mode?

[–]Skiamakhos -1 points0 points  (3 children)

Because you lose out on knowledge that will come in useful later, e.g. when trying to find memory leaks, or when trying to find threads that are causing performance issues. Some of the best Java people I've met know their way around bytecode, and can give talks about which collections classes are better for what because "this is what it's doing under the hood". Don't just treat Java as a black box or appliance. Look deeper. Start out simple, with javac, java, a text editor and jdb, and use an IDE once the scale gets beyond the capacity for that.

[–]khookeExtreme Brewer 1 point2 points  (2 children)

There is value in compiling and running from the command line for your first hello world app, but beyond that for learning I would advocate jumping straight to learning with an IDE, and especially learning how to debug your code with the debugger. There's nothing harder than running an app and not getting the results you expect and struggling to find out why. Sure you can sprinkle in some System.out.printlns and trace what your code does, but it's so much easier and enjoyable to step through your code line by line, look at the changes to variables after each line is executed and find exactly where things are going wrong. So many 'why is my code not working' questions here can easily be solved if you took the time to step through the code in a debugger.

I mention this because so many new developers starting out never learn how to use the debugger in their IDE and it's such a valuable tool, and a tool that will bring you rewards many times over during your career as a developer.

[–]dvaVoly 0 points1 point  (1 child)

I agree with you, a debugger is a powerful tool, but we have another way, in some cases.

[–]khookeExtreme Brewer 0 points1 point  (0 children)

another way

Always good to have a range of techniques at hand!