I'm a noob to Java, can you point me in the right direction?

Yeah, don’t use an IDE. Also don’t use any preexisting libraries or tools…write everything from scratch. While you’re at, start by writing your own text editor that does exactly what you want…after learning assembly and memorizing the low-level spec of the JVM. Get back to us in 20 years and we’ll give more advice on how to actually start on programming your game. Or go with option 2 (doing the exact opposite of the previously stated) and ask more questions tomorrow…or today if you’re motivated.

I know now that I need to start off by not using an IDE, so now can you recommend some books and tutorials? Thanks :slight_smile:

Re-read what I wrote. Not using an IDE is really really bad advice.

there is a difference between USING an IDE and LEARNING with an IDE.

When you never did something outside an IDE it can make you think there are little trolls and goblins preparing and running the program.
When some problem occurs (build, package, run procedure, dependencies), you will have a hard time finding out the reasons, as you are not familiar
with the underlying procedures.

Starting out without an IDE lets you learn the fundamentals, and getting a propper overview.

You can basically write a program using notepad, and compile-run it the commandline or a selfmade .bat file.
This is an important step to get secure enough in understanding what is happening behind the scenes.

Once you understand all this, you can move to a propper IDE (such as Eclipse) or use at least a propper Editor+Ant (notepad++).
Though I think only using a pure editor makes more sense when you mainly adapt already existing classes with well known logiccomponents.
(Codemaintainance), or browse specific sourcecode.

Sorry, my brother got onto here and post something, so now I need to cover it up with this :slight_smile:

@Damocles: Personally I use an IDE about 10% of the time. For a beginner? All the things you list are additional PITAs that you really don’t need. The only upside is learning to manually create a build-system. Big deal. Don’t bother until you actually need one. The downsides are a very long list. Use an IDE and only bother working with a single program…done.

I completely disagree with you and I completely agree with Damocles.

Those things are only PITAs if you don’t know how to use them and are eventually invaluable in the long run.

There is nothing sadder than seeing computers getting dumber and more fool proof rather than people getting educated…

My attitude is “learn how classpaths work, learn how basic command line options work”, and I really don’t care if that’s done concurrently with an IDE or not, but the only reliable way I’ve seen of imparting this knowledge is to take away the tools that automate this basic skill for a little while.

Generally, I’m not one of these silly “you need to learn assembly to learn how your computer works” people, but I think having at least passing familiarity with one level of abstraction below your comfort zone, as well as one above, is a good idea. As your comfort zone expands, move the levels. If there’s no higher level left to learn that you know of, start thinking about making one. If there’s no lower level, I know of a few scientists in Switzerland who’d like a word with you…

Someone just getting started out doesn’t need to worry about the long run. They need to make some progress and not get bored and quit. Not using an IDE for them is just throwing unneeded hurdles in their path. And once they’re stumbling along with a bunch of programs, their progress is much slower. Edit, switch programs, compile…dang error, switch programs…where’s the docs on this methods…repeat.

Java having fantastic tools is about the only thing that makes it interesting to use.

An ACM poll showed that 90% of professsional programmers know nothing about floating point numbers work. That seems conservative to me. Fewer and fewer programmers understand how hardware works (memory model being very important). Problems of this type are real problems. Not knowing how to create a make system is not. That’s trival to learn…and it’s boring.

If you wish to make a Java Game from scratch, you must first invent the universe.

On the 0th day God wanted to make pancakes from scratch? :slight_smile:

Mike

I have never compiled Java program with command line and I don’t see the need that I would do it in near future.

There is lot of stuff that is good to know in theory base but becouse there are allready maded tools you don’t have to make those manually by yourself.

notepad + compiler is just too error prone and boring. Reading how code is transformed to native instructions in general is lot more educational than making command line compiling couple times.