Complete Newbie

Hi Everyone,

Although my title states it i am only a complete newbie to Java. I have done a bit of C++ in the past and so have some basic knowledge of logic.

I have been reading many guides online on how to get started which are fine. But everyone seems to use different IDE’s, Java versions and libraries.

My question to you experienced and very helpful developers out there (i have been reading forum posts and i must say the community here is awesome) is as follows:

I have an idea, I want to bring it to life. It is a 2D Zelda type game (Gameboy original style). I know my capabilities are not good enough to cover this all by myself but this is the goal i wish to work towards even if it takes me a few years (or longer).

Which Compiler/IDE would you recommend using and which version of Java for starters?

I know Java has a hell of alot of libraries built in but are there any essentials that people use that i should download to prevent hold ups in the future?

Basically i want to get completely set up from the start so i can just enjoy programming and problem solving and grow my knowledge and hopefully get to know some of the community in the meantime.

I’d love to work on a game as a team eventually but first i need to get a good grounding with Java.

Thanks in advance for reading this!

I look forward to hearing your response

Thanks

Farsight

I think the most used IDE’s around here is either Eclipse or Netbeans, I myself use Eclipse and find that a useful IDE. As for the compiler, once you’ve installed the JDK, then you should have the java compiler. Both Eclipse and Netbeans has a “Compile” button, so you don’t have to do the compiling from the terminal.

As for libraries, you can achieve your goal with the standard installation of Java, however there’s plenty of libraries out there, that can help you, and it’s easy to get a war going between them.

But before starting with libraries, get a feel for how Java is. Then if you insist on using a library, go for something like LWJGL or LibGDX.

Cheers. :slight_smile:

Ok from the basics to the more specific stuff.

Just use the most recent Java, so Java 7 JDK

The choice of IDE is a bit more difficult. There are 3 major IDEs for Java: Eclipse, Netbeans and IntelliJ

IntelliJ is a commercial product, but I guess there are some free versions also. Eclipse seems to be the most used one here on the forum, but I prefer Netbeans for my work. My arguments for netbeans are:

  • better performance, especially on low hardware as laptops
  • a lot of essential/common tools are included and just work, in eclipse one has to search and find a lot of plugins before on can start to work
  • cleaner interface

When it comes to the choice which framework one should use, the common opinion is to use libGDX. Don’t waste your time trying to code something with Java2D, which is a outdated mess.

LibGDX is not the holy grail of gamelibs, but it offers the most features and is easily accessible for beginners. It has a lot of example games and enough documentation to get you started.

Thanks Regenuluz and Danny02, Really appreciate the advice :slight_smile:

Well i have already installed netbeans and Java 7 JDK so i guess i was already set without knowing it! Just wanted to make sure i wasn’t using old/unsupported/messy software.

I will check out eclipse too as i see alot of people using it in tutorials, see which i prefer!

I will begin my epic journey with Java this evening! Want to get ahead ready for the degree i will hopefully be taking next year :persecutioncomplex:

I can see i’m going to love being part of this community :slight_smile:

Thanks again!!

(more replies are still welcome by the way any other views are always welcome!)

I recommend Eclipse over Netbeans since I like it’s syntax coloring and it’s style. It fits me completely.

When I started out programming in Java (and programming altogether) I tried making a mod for Minecraft, despite being partially succesful in making throwing knives it made me realise I had a lot to learn about Java. So I read “Head First Java” from O’Reilly, it almost felt like putting on glasses for the first time :stuck_out_tongue: Really nice, non boring-wall-of-text book, quite engaging. Plus it made me feel ashamed of the code I had written for my MC mod.

Moral of the story; Read a Java programming book. Most don’t require you to use an IDE or even tell you to do everything in a console, but you’re free to ignore that. Actually do the exercises, they help a lot in understanding and retaining that understanding. Do it beside making your game and you’ll see that discovering new possibilities in programming helps you think of stuff for your game. Plus, actively thinking about putting fresh learned knowledge to use makes reading & learning easier. And when you’re done you have a handy book to fall back on when you need info about (almost) anything java.

Side notes about Head First Java:
Starts out with pure basics, how to write a barebones java program, compile it and run it. Without IDE. When you’ve done that you can apply that knowledge to any IDE because you know the terminology.
It also covers a bunch of Java’s built in libraries.
Already know about a subject (like operators) just skip it! :wink:

In my opinion NetBeans is better than Eclipse - much faster and (at least for me) it looks much better.

About library to make games:
Easy way: LibGDX
“Do it yourself” way: LWJGL
“Do it yourself, but with some help” way: LWJGL + TWL

Java2d is really bad when you want to write games in it, but it allows you to do quick idea testing/prototyping very fast. :wink:

Yeah, just start coding and playing around with stuff. That’s what i’ve done. I’m still a newbie but i’ve put together a few smaller games. Let me know if you need any help. These are my favorite types of games to make.

If you are starting out for game programming in java I recommend you go over some simple text based console games first (using eclipse or netbeans, I prefer eclipse) then if you want to go the hard way go look on youtube channels such as thechernoproject and designsbyzephyr are very good for pure java games. Otherwise use a library such as java2d, slick(not recommended as its rarely updated) or the otherone my mind is blank.

[quote]Don’t waste your time trying to code something with Java2D, which is a outdated mess.
[/quote]
I have to strongly disagree with this. To be honest with you, i think java2D is a great way to teach newbies how to structure games. Its such an easy library to use that you really don’t need to worry about teaching someone all the different functions. It doesn’t get much easier than g.drawRectangle(x, y, width, height). Sure, after a while you need to get off of java2D and use a different library, but in the beginning i think its a very useful tool. Utilize what you can, don’t not use it because its slow. You can still make basic games, and thats a good thing when you’re learning/teaching.

Thank you all for your invaluable input. It is Greatly appreciated!

I feel comfortable in setting my initial tools up and also have a good idea for basic progression now too :slight_smile:

I most certainly will be buying some resources on the side to aid my learning, so i will add this book to my list.

I didn’t get chance to start coding last night, flipping decorating still going on (3 months down) lol Hoping i might get some time this evening!

If not i have 2 weeks paternity coming up so should have some free time then, and lots more in the evenings as the decorating saga comes to an end!

The community here is amazing and i can’t wait to be able to help others out here too!

Thanks again all!