Recommendations of A Langauge

Started by
23 comments, last by Anri 11 years, 1 month ago

Hi there! New to the forum and I'm wondering which langauge (the most common of all common questions) that you guys are most comfortable with creating video games with. I've heard that I should learn C++, or take a look at some of the nice engines that are available to use (Unreal, Unity, JMonkey ect.) Though I've always been they guy to want to his own thing. I've already a strong grasp of Java, and a somewhat understanding of HTML, my eyes were wondering on the web today and found Python and was wondering what people though ot developing with that was like. My goals as of making games are small, I don't want anything flashy, nothing big right now I'd be impressed if I managed to make a sprite move across the screen. So at your mercy mates! :D

Advertisement

C++ has an advantage of programming for almost any system and saving memory but programming times can be a lot longer.

Python I have no idea as I've never used that style yet.

I would stick with HTML 5 and JAVA if its a small goal your looking for if you really enjoy making games then move up to C# and/or C++.

In the end its about the "style" and not the language you write it in.

If you don't want to use an engine and you know Java why not go with that?

Experiment with Python, it's a very useful language and easy to get started with.

C++ has the steepest learning curve and while you can ultimately do anything with it, it might take a while to get there.

Well if you know Java give jmonkey a go.

If you go the Java route, I recommend using LWJGL or Slick2D(Their website is currently down).

People argue that C++ is more powerful, but since you already know Java there is no need to learn a new language for minor performance increases.

Stay gold, Pony Boy.

There have been a lot of extremely similar threads on this in the past. As usual, my advice is to:

1: Start with Python, because it doesn't get in your way while you're learning the basics

2: End up with C++ when you need more power

3: Avoid Java, because it is restrictive and bloated

4: Avoid game engines, because they prevent you from learning, get in the way, and take a lot of the fun out of development.

[size="1"]And a Unix user said rm -rf *.* and all was null and void...|There's no place like 127.0.0.1|The Application "Programmer" has unexpectedly quit. An error of type A.M. has occurred.
[size="2"]

4: Avoid game engines, because they prevent you from learning, get in the way, and take a lot of the fun out of development.

I agree with this.

3: Avoid Java, because it is restrictive and bloated

It may be bloated, but it is not restricitve. Using a library Java is very powerful, look at minecraft, made with Java and LWJGL.

Stay gold, Pony Boy.

If you know Java, you basically know C#; C# has XNA, which will let you get to the point of moving a sprite around the screen in literally minutes--it obscures a lot of the low-level tedium from the programmer, allowing you to focus on the actually interesting game programming part and letting you get things done much faster. Sure, you sacrifice some perfromance for that convenience, but you'll probably never even notice (when you reach a point where XNA can't handle what you're doing, then it might be time to move to C++).

Personally, I learned Java, moved to C#/XNA, read Kurt Jaegers' XNA 4.0 Game Development by Example, then started extending the sample code provided to suit my own needs. It's a great beginner book, but the engine he builds makes a lot of really bizarre design choices early on that are a nightmare to change later--and to be completely honest, I've learned more from trying to "fix" his code than I did from the book itself. Maybe that was the point, though; I'd certainly claim it was if I was the author.

3: Avoid Java, because it is restrictive and bloated


It may be bloated, but it is not restricitve. Using a library Java is very powerful, look at minecraft, made with Java and LWJGL.

To clarify, the Java language itself is very restrictive. It lacks copy constructors, destructors, operator overloading, explicit memory management, and multiple inheritance among other things. When you become a more advanced programmer, not having these things starts to hurt. I believe it is best not to get involved to begin with.

[size="1"]And a Unix user said rm -rf *.* and all was null and void...|There's no place like 127.0.0.1|The Application "Programmer" has unexpectedly quit. An error of type A.M. has occurred.
[size="2"]

If you have a strong grasp of Java. I fail to see why it would be hard for you to learn C# or even C++ for that matter.

Just go ahead and teach yourself already, its not some giant impossible to climb curve to learn the language of C++ or even C#. Only way you will do it is if you do it.

No language should be seen as a stepping stone to another language they are all unique in their own rights, claiming you know C# from Java is a ludicrous statement. They have several unique differences.

This topic is closed to new replies.

Advertisement