It looks like you're new here. If you want to get involved, click one of these buttons!
Hello all!
I'll make this short, since I just made a long post on my own language (Danish) about this..
What I'm asking is, simply the title.. The best program language for programming games.
Why? I'm applicating for GameIT-College in Denmark (The only one of its kind here) and I'm certain I get in..
About GameIT-College Denmark: You basicly learn all the diffrent aspects of game-developing (Design, 3D, Programming, and so on) The education takes 3 years and its a college education at the same times, not a normal one, one with gaming-relative purposes. In the 3 years you visit diffrent places in the world (Boston I think it is, in the US, and London they visit last and learned the Unreal3 Engine)
What I want to be my main subject, is programming.
The GameIT-College first starts again this summer, so there's some good months untill then.
So I thought why not learn a language beforehand, since thats what I want to do.
I only have experience with HTML/CSS which basicly isn't programming.. But you know
After GameIT-College (3 years) I think of taking higher education, "Datamatiker" A education which focus is on programming only. It requires a college-education, so I thought GameIT-College would be a perfect way to go first.
Basicly: What program language should I start with?
I read here and there that C++ is the most common used language and the "best". I'm not sure of this, only what Ive read.
Any programmers here on MMORPG.com that could give me some advices?
I have a good 8 months time to learn a language in, before I start on the education.. I plan to take a few hours a day programming.
I hope on some serious and good answers.. Thank you !
Dearest,
Izork.
Comments
Sadly C++ is THE language, and oddly enough you are better off than most by learning it as your FIRST language. C++ is a pain in the neck to get used to if you are say a non-object-oriented programmer in a different language.
The C family of languages sacrifice much to get closer to the metal of the machine. C was originally considered a mid-level language. However the OS does what it can to keep you AWAY from the metal.
It would be a far less buggy world if pascal or some other more structured language than C++ had won the language war (I blame microsoft).
C++ is definitely the languange used in game-production.
As for teaching yourself to program before getting into school... Java may be a better choice. Easier to learn on your own, and will give you the chance to learn to think like a programmer.
I doubt you would become proficent enough in C++ teaching yourself by next summer. I would try python out. PyGame is a good one to get an idea about writing games. Cross platofrm too.
Archlinux ftw
Don't be afraid of learning C++ -- you CAN do it in the time you have if you apply yourself. You do not need to start with java or python or such.
Thanks for the useful answers!
Seems most people (on danish forums too)
Says that Java is the easiest to start with, and then when I have the basics, go to C afterwards.
Guess thats what i*m gonna do..
Thanks a lot!
Interesting question OP. C++ is the language, but I heard C# is becoming more applicable? Is that right, someone? I went the "OO language route" and really enjoying it currently. How to Think Like A Computer Scientist may be of interest: Java, C++, Python, Logo. Gluck!
http://www.gdcvault.com/play/1014633/Classic-Game-Postmortem
Since you 'only' have 8 moths I'd recommend Java as your first language. You will learn OOP which will be usefull for learning C++ and C# later on. C is always good to know since you will really learn how to write good (and bad) programs and you can manipulate hardware quite good there compared to Java and C#. But learning C takes some time and is more used in low level programming now a days, for the flashy stuff it's mostly C++.
Object Orientetated Programming is better to learn first as it's easier to understand functional programming afterwards, then to do the other way around.
Python is also a good suggestion but I'd not recommend it as a first programming language, only once you get the hang of 'programming' as a whole.
Just saying, with 10+ years of professional programming experience...
Yeh, I've also decided to start with Java.
I'll buy a book, explaining the basics and start from there.
AMEN.
OP, Java and the like are business computing languages. The only reason we use them is that they are Rapid Application Development languages. Game programming is totally different and we can't "afford" to sacrifice speed for our convenience.
I'm buying http://www.amazon.co.uk/Head-First-Java-Kathy-Sierra/dp/0596009208/ref=sr_1_4?ie=UTF8&qid=1287093067&sr=8-4
Since I got it recommended by a few people.
What you think? Good start?
C++ is really no harder to learn then C or Java (in fact I would argue there is zero point in learning C at this point although most colleges make you take C before C++ which is silly).
I started off in C and learned C++ once it became an official thing. I did take some Java courses just for the hell of it and I will say that it was easy to learn but I found some of the language annoying in how it worked. I actually think C++ is a bit more straightforward to learn and that there is no need to learn any language as a stepping stone to another.
If you aren't focused on making cutting edge games with top end graphics you can certainly make some games in java (or flash, or even give python a whirl since one day you might want to use that as a scripting language to accompany an engine). So it isn't a matter of NEEDING to use C++. In fact you could use XNA from microsoft which is C# instead of C++ and release a game on the xbox indie arcade. So there are lots of options on what languages to use.
Python seems very popular as a first language to learn
Think you missunderstood me.
I want to learn Java first, in the 8 months up untill I start on the GameIT-College.
Then when I'm done with the basic stuff etc I can begin with C++, so I have a better understanding before starting on C++.
If you want to learn a programming language, learn C++. First off, python is not a programming language, its a scripting language. Second off, I might be wrong but, I am pretty sure there is not a single game engine written in anything but the combination of C, C++, and assembly. If you are not doing engine development, then really you are just doing simple scripting which then you would use javascript, C#, python, .... Unless that is your goal, to just use engines that are already made, then yes python would be a good idea.
East Carolina University, Computer Science BS, 2011
--------------------
Current game: DAOC
Games played and quit: L2, PlanetSide, RF Online, GuildWars, SWG, COH/COV, Vanguard, LOTRO, WoW, WW2 Online, FFXI, Auto-Assault, EVE Online, ShadowBane, RYL, Rappelz, Last Chaos, Myst Online, POTBS, EQ2, Warhammer Online, AoC, Aion, Champions Online, Star Trek Online, Allods, Darkfall.
Waiting on: Earthrise
Names: Citio, Goldie, Sportacus
As far as basic programming goes C++ is way easier to learn than java in my book. Java just has more going on. C++ is very simple until you get to pointers, which you shouldnt get to if you are just learning the basics on your own.
East Carolina University, Computer Science BS, 2011
--------------------
Current game: DAOC
Games played and quit: L2, PlanetSide, RF Online, GuildWars, SWG, COH/COV, Vanguard, LOTRO, WoW, WW2 Online, FFXI, Auto-Assault, EVE Online, ShadowBane, RYL, Rappelz, Last Chaos, Myst Online, POTBS, EQ2, Warhammer Online, AoC, Aion, Champions Online, Star Trek Online, Allods, Darkfall.
Waiting on: Earthrise
Names: Citio, Goldie, Sportacus
My information on this one for your purposes:
1. C++ & increasingly C# are the game programming languages (C apparently is less important these days; forget it's virtues mentioned, perhaps it had more sins, however).
2. Learning ANY language before the course is the best thing to do. My opinion is OO language felt easier to pick-up, each to their own. I'd go for Java or python unless you are well set to tackle C++ in your own mind.
3. Head First is recommended by a lot of ppl (check it is v6 now?) but I did not like it personally. May want to browse it if that's possible? The above link is a good additional resource imo.
4. IDE's such as Eclipe are very powerful but a simpler one such as JCreator might be a better idea also consider for purposes of learning programming.
Summary: Think getting into Java will be a profitable exercise for your intended goal.
http://www.gdcvault.com/play/1014633/Classic-Game-Postmortem
My vote goes to Python because of the many different programming styles you can use with it.
If you just want to go ahead and make games and have no intention of being a major programmer (in which you shouldve chosen comp sci or something more programming focused) then I suggest...
Downloading UDK, research research research, then compile your research and start on your crash course through UDK.
go c++ in your situation.
Visit My Game Blog
I'm very confused.
A lot of people say Java for first, so you got "basics" since its easier to learn than java.
But then now there's many saying that C++ is also as easy, and then I don't have to do java?
I talked with the ones I'm living with those 2 weeks here at GameIT-College and they say they used java at first, and then shisharp or something.
But I'm certain it wil lbe java or C++ im just confused right now, whether it should be c++ or java.
if C++ is as easly as java to learn, it would be waste of time to learn java?
http://www.amazon.co.uk/Accelerated-Practical-Programming-Example-Depth/dp/020170353X/ref=sr_1_1?ie=UTF8&qid=1287127409&sr=8-1
as someone recommended before.
Good choice?
Should I go for C++ first?
Then maybe this one after:
http://www.amazon.co.uk/Programmers-Charles-River-Media-Development/dp/1584504528/ref=sr_1_10?ie=UTF8&qid=1287127609&sr=8-10
Althought the first book is from 2000 and the other one from 2006, it still works right
1. Learning ANY programming language will be beneficial. Period.
2. Check online tutorials and check out these languages and see for youself then research an appropriate textbook or email any course professors for recommendations if you want a textbook to go through to chart your progress etc. and explain your starting position.
3. Depending on your experience, if you are browsing for books make the distinction between: Never programmed in any language before (New to Programming) and never programmed in this language before (Assume knowledge in another area) and susequent levels of experience of using a language (1-2 Years of professional use). Which category are you?
After this, if you still like C++, give it a go as that is what your career path is aligned to. But OO languages have their advantages also (Easy, Powerful, OO, Glue, Run-Anywhere, open-source, community). Either way you'll learn and everyone has their preferences.
http://www.gdcvault.com/play/1014633/Classic-Game-Postmortem
I have zero experience with programming. So those books will be good I guess.
But what you're saying is, I can start with C++, just preferences i guess?
I would say then I should start with C++.
I've programmed in both. I would say Java is easier but C++ is faster.
Java though. I have to figure out which language I want to use in an AI project I'm in right now.
Guild Wars 2!