Welcome to Dream.In.Code
Become a C++ Expert!

Join 150,223 C++ Programmers for FREE! Get instant access to thousands of C++ experts, tutorials, code snippets, and more! There are 2,237 people online right now. Registration is fast and FREE... Join Now!




Am i learning the wrong programming langauge?

 
Reply to this topicStart new topic

Am i learning the wrong programming langauge?, I want to make game ( like you haven't heard that one)

Delta_Echo
30 Nov, 2007 - 01:43 AM
Post #1

D.I.C Regular
***

Joined: 24 Oct, 2007
Posts: 481


My Contributions
I am sure you have heard it a few hundred million times, i want to make game!
I am learning C++ (witch is why i am asking here), should i be learning something else?
i want to know before i dedicate more time to programming.
So...am i learning in the correct language?

Thanks
User is offlineProfile CardPM
+Quote Post

Bench
RE: Am I Learning The Wrong Programming Langauge?
30 Nov, 2007 - 03:39 AM
Post #2

D.I.C Addict
Group Icon

Joined: 20 Aug, 2007
Posts: 686



Thanked: 24 times
Dream Kudos: 150
Expert In: C/C++

My Contributions
That's not a straightforward question to answer, since it depends on all sorts of factors, including your own personal preference. You're right of course, to ask whether you're picking the right tool for the job, although, depending what 'kind of' game you're aiming to make, the answer will vary.

I'm guessing that C++ is your first (or maybe second?) programming language? So you're not looking to make the next latest-greatest 3D supergame with all bells & whistles. More realistically, maybe a text-based adventure game or a simple 2D game.

If you're going to write a text game, which is a very realistic goal for a beginner, then C++ is as good a language as any.

C++ is a very flexible, powerful language, and many, many popular games and applications have been written entirely in C++, but its platform independent. This means that anything remotely platform specific (such as graphics, i/o devices, multithreading, etc) are all left to 3rd party library vendors. This isn't a problem in itself, since large compiler vendors and O/S vendors have released their own API's and toolkits for this kind of thing. The only drawback is that there's no common ground between those various components in C++, and you'll need to look at forums specific to those API's for help/support (They're completely off-topic in a standard C++ forum).

Alternatively, you could look at a managed language like Java or C#, which has all that kind of stuff available as standard. Java is relatively platform independent, but also a little slow to load up, and fairly inefficient when you begin writing large, complicated applications. C# is a little better, although, its a Microsoft language, and only runs on platforms which support the Microsoft .NET framework.

Another possibility if you don't mind tying yourself to the Microsoft .NET framework is XNA - a language designed for writing games on the Microsoft .NET platform.
- You could also check out Python, which seems to be a nice, friendly language towards beginners. (Python is also 'managed', but to me, it seems to run faster than Java)


Don't let this put you off learning C++; C++ is a very widely used and widely supported language. An in-depth understanding of C++ should set you up with enough technical knowledge that you ought to be able to pick up many other languages fairly quickly. This being the case, C and C++ are fairly popular with employers (In case your goal is to go for a career as a software developer). compared to some languages, C++ isn't "easy" and learning it isn't quick, but for many people, learning the language is a rewarding experience.

This post has been edited by Bench: 30 Nov, 2007 - 03:51 AM
User is offlineProfile CardPM
+Quote Post

Delta_Echo
RE: Am I Learning The Wrong Programming Langauge?
30 Nov, 2007 - 12:49 PM
Post #3

D.I.C Regular
***

Joined: 24 Oct, 2007
Posts: 481


My Contributions
Thanks, and I am aiming toward a game programming career.
I was google-ing game programming and kept comming back to DirectX and OpenGl, are those languages?

User is offlineProfile CardPM
+Quote Post

no2pencil
RE: Am I Learning The Wrong Programming Langauge?
30 Nov, 2007 - 01:09 PM
Post #4

My fridge be runnin OH NOEZ!
Group Icon

Joined: 10 May, 2007
Posts: 7,166



Thanked: 78 times
Dream Kudos: 2425
Expert In: Goofing Off

My Contributions
QUOTE(Delta_Echo @ 30 Nov, 2007 - 03:43 AM) *

I am sure you have heard it a few hundred million times, i want to make game!
I am learning C++ (witch is why i am asking here), should i be learning something else?
i want to know before i dedicate more time to programming.
So...am i learning in the correct language?

Thanks

While I've not had much experience in the "game making", I would have to say Yes, continue to learn C/C++.

1.) It's a fundamental language, you'll learn alot more about I/O, computers, hardware, & program-to-human interaction than you would with something easier like VB.
2.) It's a multi-platform language. You can port your code to Linux,Unix, Mac OS-X should you feel the need to.
3.) There are a TON of example already written in C/C++! That's reason enough. Learn from others mistakes =-)

Best of luck!

<edit>removed content because Bench provided a better description, & part of mine was (for lack of a better term) wrong</edit>

This post has been edited by no2pencil: 30 Nov, 2007 - 01:36 PM
User is offlineProfile CardPM
+Quote Post

Bench
RE: Am I Learning The Wrong Programming Langauge?
30 Nov, 2007 - 01:23 PM
Post #5

D.I.C Addict
Group Icon

Joined: 20 Aug, 2007
Posts: 686



Thanked: 24 times
Dream Kudos: 150
Expert In: C/C++

My Contributions
QUOTE(Delta_Echo @ 30 Nov, 2007 - 08:49 PM) *

Thanks, and I am aiming toward a game programming career.
I was google-ing game programming and kept comming back to DirectX and OpenGl, are those languages?

Both OpenGL and DirectX are API's which provide an interface for accelerated hardware. (API stands for application programming interface)

OpenGL stands for Open Graphics Library, and is primarily used for hardware accelerated 3D games & apps. its available on a whole load of platforms, with interfaces available for more than half a dozen different languages.
http://www.opengl.org/

DirectX is a Microsoft API - again, interfaces are available for a multitude of languages, but its only available on Microsoft platforms (including the XBox), although DirectX has several components for 3D graphics, sound, network connectivity...
http://www.microsoft.com/directx
User is offlineProfile CardPM
+Quote Post

Delta_Echo
RE: Am I Learning The Wrong Programming Langauge?
1 Dec, 2007 - 05:50 AM
Post #6

D.I.C Regular
***

Joined: 24 Oct, 2007
Posts: 481


My Contributions
Thanks everyone!


User is offlineProfile CardPM
+Quote Post

Reply to this topicStart new topic
Time is now: 1/9/09 05:57AM

Be Social

Dream.In.Code RSS Feed Dream.In.Code LinkedIn Group Follow Us On Twitter

Live C++ Help!

C++ Tutorials

Reference Sheets

C++ Snippets

DIC Chatroom

Bye Bye Ads

Monthly Drawing

Thumb Drive

Top Contributors

Top 10 Kudos This Month